13
13
import requests .exceptions
14
14
from sys import version_info
15
15
16
- from influxdb .line_protocol import make_lines
16
+ from influxdb .line_protocol import make_lines , quote_ident , quote_literal
17
17
from influxdb .resultset import ResultSet
18
18
from .exceptions import InfluxDBClientError
19
19
from .exceptions import InfluxDBServerError
@@ -532,8 +532,8 @@ def alter_retention_policy(self, name, database=None,
532
532
should be set. Otherwise the operation will fail.
533
533
"""
534
534
query_string = (
535
- "ALTER RETENTION POLICY \" {0}\" ON \" {1}\" "
536
- ).format (name , database or self ._database )
535
+ "ALTER RETENTION POLICY {0} ON {1}"
536
+ ).format (quote_ident ( name ), quote_ident ( database or self ._database ) )
537
537
if duration :
538
538
query_string += " DURATION {0}" .format (duration )
539
539
if replication :
@@ -553,8 +553,8 @@ def drop_retention_policy(self, name, database=None):
553
553
:type database: str
554
554
"""
555
555
query_string = (
556
- "DROP RETENTION POLICY \" {0}\" ON \" {1}\" "
557
- ).format (name , database or self ._database )
556
+ "DROP RETENTION POLICY {0} ON {1}"
557
+ ).format (quote_ident ( name ), quote_ident ( database or self ._database ) )
558
558
self .query (query_string )
559
559
560
560
def get_list_retention_policies (self , database = None ):
@@ -611,8 +611,8 @@ def create_user(self, username, password, admin=False):
611
611
privileges or not
612
612
:type admin: boolean
613
613
"""
614
- text = "CREATE USER \" {0}\" WITH PASSWORD ' {1}' " .format (username ,
615
- password )
614
+ text = "CREATE USER {0} WITH PASSWORD {1}" .format (
615
+ quote_ident ( username ), quote_literal ( password ) )
616
616
if admin :
617
617
text += ' WITH ALL PRIVILEGES'
618
618
self .query (text )
@@ -623,7 +623,7 @@ def drop_user(self, username):
623
623
:param username: the username to drop
624
624
:type username: str
625
625
"""
626
- text = "DROP USER {0}" .format (username )
626
+ text = "DROP USER {0}" .format (quote_ident ( username ) )
627
627
self .query (text )
628
628
629
629
def set_user_password (self , username , password ):
@@ -634,7 +634,8 @@ def set_user_password(self, username, password):
634
634
:param password: the new password for the user
635
635
:type password: str
636
636
"""
637
- text = "SET PASSWORD FOR {0} = '{1}'" .format (username , password )
637
+ text = "SET PASSWORD FOR {0} = {1}" .format (
638
+ quote_ident (username ), quote_literal (password ))
638
639
self .query (text )
639
640
640
641
def delete_series (self , database = None , measurement = None , tags = None ):
@@ -652,11 +653,12 @@ def delete_series(self, database=None, measurement=None, tags=None):
652
653
database = database or self ._database
653
654
query_str = 'DROP SERIES'
654
655
if measurement :
655
- query_str += ' FROM " {0}" ' .format (measurement )
656
+ query_str += ' FROM {0}' .format (quote_ident ( measurement ) )
656
657
657
658
if tags :
658
- query_str += ' WHERE ' + ' and ' .join (["{0}='{1}'" .format (k , v )
659
- for k , v in tags .items ()])
659
+ tag_eq_list = ["{0}={1}" .format (quote_ident (k ), quote_literal (v ))
660
+ for k , v in tags .items ()]
661
+ query_str += ' WHERE ' + ' AND ' .join (tag_eq_list )
660
662
self .query (query_str , database = database )
661
663
662
664
def grant_admin_privileges (self , username ):
@@ -668,7 +670,7 @@ def grant_admin_privileges(self, username):
668
670
.. note:: Only a cluster administrator can create/drop databases
669
671
and manage users.
670
672
"""
671
- text = "GRANT ALL PRIVILEGES TO {0}" .format (username )
673
+ text = "GRANT ALL PRIVILEGES TO {0}" .format (quote_ident ( username ) )
672
674
self .query (text )
673
675
674
676
def revoke_admin_privileges (self , username ):
@@ -680,7 +682,7 @@ def revoke_admin_privileges(self, username):
680
682
.. note:: Only a cluster administrator can create/ drop databases
681
683
and manage users.
682
684
"""
683
- text = "REVOKE ALL PRIVILEGES FROM {0}" .format (username )
685
+ text = "REVOKE ALL PRIVILEGES FROM {0}" .format (quote_ident ( username ) )
684
686
self .query (text )
685
687
686
688
def grant_privilege (self , privilege , database , username ):
@@ -695,8 +697,8 @@ def grant_privilege(self, privilege, database, username):
695
697
:type username: str
696
698
"""
697
699
text = "GRANT {0} ON {1} TO {2}" .format (privilege ,
698
- database ,
699
- username )
700
+ quote_ident ( database ) ,
701
+ quote_ident ( username ) )
700
702
self .query (text )
701
703
702
704
def revoke_privilege (self , privilege , database , username ):
@@ -711,8 +713,8 @@ def revoke_privilege(self, privilege, database, username):
711
713
:type username: str
712
714
"""
713
715
text = "REVOKE {0} ON {1} FROM {2}" .format (privilege ,
714
- database ,
715
- username )
716
+ quote_ident ( database ) ,
717
+ quote_ident ( username ) )
716
718
self .query (text )
717
719
718
720
def get_list_privileges (self , username ):
@@ -734,7 +736,7 @@ def get_list_privileges(self, username):
734
736
{u'privilege': u'ALL PRIVILEGES', u'database': u'db2'},
735
737
{u'privilege': u'NO PRIVILEGES', u'database': u'db3'}]
736
738
"""
737
- text = "SHOW GRANTS FOR {0}" .format (username )
739
+ text = "SHOW GRANTS FOR {0}" .format (quote_ident ( username ) )
738
740
return list (self .query (text ).get_points ())
739
741
740
742
def send_packet (self , packet ):
0 commit comments