Sotirios Delimanolis created CASSANDRA-8638:
-----------------------------------------------
Summary: CQLSH -f option should ignore BOM in files
Key: CASSANDRA-8638
URL: https://issues.apache.org/jira/browse/CASSANDRA-8638
Project: Cassandra
Issue Type: Improvement
Components: API, Drivers (now out of tree)
Environment: Red Hat linux
Reporter: Sotirios Delimanolis
Priority: Trivial
I fell in byte order mark trap trying to execute a CQL script through CQLSH.
The file contained the simple (plus BOM)
{noformat}
CREATE KEYSPACE IF NOT EXISTS xobni WITH replication = {'class':
'SimpleStrategy', 'replication_factor': '3'} AND durable_writes = true;
-- and another "CREATE TABLE bucket_flags" query
{noformat}
I executed the script
{noformat}
[~]$ cqlsh --file /home/selimanolis/Schema/patches/setup.cql
/home/selimanolis/Schema/patches/setup.cql:2:Invalid syntax at char 1
/home/selimanolis/Schema/patches/setup.cql:2: CREATE KEYSPACE IF NOT EXISTS
test WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '3'}
AND durable_writes = true;
/home/selimanolis/Schema/patches/setup.cql:2: ^
/home/selimanolis/Schema/patches/setup.cql:22:ConfigurationException:
<ErrorMessage code=2300 [Query invalid because of configuration issue]
message="Cannot add column family 'bucket_flags' to non existing keyspace
'test'.">
{noformat}
I realized much later that the file had a BOM which was seemingly screwing with
how CQLSH parsed the file.
It would be nice to have CQLSH ignore the BOM when processing files.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)