nestjs-express-cassandra
nestjs-express-cassandra copied to clipboard
Error initializing database
I'm submitting a...
[ ] Regression
[ ] Bug report
[ ] Feature request
[x] Documentation issue or request
Current behavior
[Nest] 11754 - 01/31/2023, 11:43:20 AM ERROR [ExpressCassandraModule] Error while retrieveing Schema of DB Table "ResponseError: Invalid amount of bind variables
at FrameReader.readError (/Users/milan/Sites/cassandra-nest/node_modules/cassandra-driver/lib/readers.js:389:17)
at Parser.parseBody (/Users/milan/Sites/cassandra-nest/node_modules/cassandra-driver/lib/streams.js:209:66)
at Parser._transform (/Users/milan/Sites/cassandra-nest/node_modules/cassandra-driver/lib/streams.js:152:10)
at Parser.Transform._write (node:internal/streams/transform:175:8)
at writeOrBuffer (node:internal/streams/writable:392:12)
at _write (node:internal/streams/writable:333:10)
at Parser.Writable.write (node:internal/streams/writable:337:10)
at Protocol.ondata (node:internal/streams/readable:766:22)
at Protocol.emit (node:events:513:28)
at addChunk (node:internal/streams/readable:324:12)
at readableAddChunk (node:internal/streams/readable:297:9)
at Protocol.Readable.push (node:internal/streams/readable:234:10)
at Protocol.readItems (/Users/milan/Sites/cassandra-nest/node_modules/cassandra-driver/lib/streams.js:124:10)
at Protocol._transform (/Users/milan/Sites/cassandra-nest/node_modules/cassandra-driver/lib/streams.js:47:10)
at Protocol.Transform._write (node:internal/streams/transform:175:8)
at writeOrBuffer (node:internal/streams/writable:392:12) {
info: 'Represents an error message from the server',
code: 8704,
coordinator: '127.0.0.1:9042',
query: 'SELECT view_name,base_table_name,where_clause,keyspace_name FROM system_schema.views WHERE keyspace_name=? AND base_table_name=? ALLOW FILTERING;'
}"
Expected behavior
I cannot find out why the error is being thrown...
Minimal reproduction of the problem with instructions
import { ExpressCassandraModuleOptions } from '@ouato/nestjs-express-cassandra';
export class CassandraConfig {
static readonly options: ExpressCassandraModuleOptions = {
clientOptions: {
contactPoints: ['localhost'],
localDataCenter: 'datacenter1',
protocolOptions: {
port: 9042,
},
queryOptions: {
consistency: 1,
},
socketOptions: { readTimeout: 60000 },
keyspace: 'employee',
},
ormOptions: {
createKeyspace: true,
defaultReplicationStrategy: {
class: 'SimpleStrategy',
replication_factor: 1,
},
migration: 'alter',
},
};
}
import {
Column,
CreateDateColumn,
Entity,
UpdateDateColumn,
} from '@ouato/nestjs-express-cassandra';
@Entity({
table_name: 'employee',
key: ['id'],
})
export class EmployeeEntity {
@Column({ type: 'int' })
id: number;
@Column({ type: 'text' })
name: string;
@CreateDateColumn()
created_at: Date;
@UpdateDateColumn()
updated_at: Date;
}
cqlsh:employee> desc employee;
CREATE KEYSPACE employee WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = true;
CREATE TABLE employee.employee (
id int PRIMARY KEY,
created_at timestamp,
name text,
updated_at timestamp
) WITH additional_write_policy = '99p'
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND cdc = false
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'chunk_length_in_kb': '16', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND crc_check_chance = 1.0
AND default_time_to_live = 0
AND extensions = {}
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair = 'BLOCKING'
AND speculative_retry = '99p';
CREATE TABLE employee.schema_version (
script_name text PRIMARY KEY,
checksum text,
executed_by text,
executed_on timestamp,
execution_time int,
status text
) WITH additional_write_policy = '99p'
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND cdc = false
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'chunk_length_in_kb': '16', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND crc_check_chance = 1.0
AND default_time_to_live = 0
AND extensions = {}
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair = 'BLOCKING'
AND speculative_retry = '99p';
What is the motivation / use case for changing the behavior?
Get data from database.
Environment
Nest version: v18.12.1
For Tooling issues:
- Node version: v18.12.1
- Platform: macOS Ventura Version 13.1 (22C65)