[ 
https://issues.apache.org/jira/browse/CASSANDRA-8638?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289482#comment-14289482
 ] 

Abhishek Gupta edited comment on CASSANDRA-8638 at 1/23/15 4:38 PM:
--------------------------------------------------------------------

[~s_delima] I have created a patch with a fix to check for BOM characters, if 
they are present it replaces them with empty string. Please review it and apply 
if it looks good. 

Attached patch file: 0001-bug-CASSANDRA-8638.patch

One more enhancement for this could be to check the file if it has BOM 
characters then only you replace these characters.


was (Author: abhish_gl):
[~s_delima] I have created a patch with a fix to check for BOM characters, if 
they are present it replaces them with empty string. Please review it and apply 
if it looks good.

One more enhancement for this could be to check the file if it has BOM 
characters then only you replace these characters.

> 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: Tools
>         Environment: Red Hat linux
>            Reporter: Sotirios Delimanolis
>            Priority: Trivial
>              Labels: cqlsh, lhf
>             Fix For: 2.1.3
>
>         Attachments: 0001-bug-CASSANDRA-8638.patch
>
>
> 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)

Reply via email to