Skip to content
This repository has been archived by the owner on Jul 26, 2024. It is now read-only.

Use default DB in InfluxDBClient.write. #602

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 25 additions & 16 deletions influxdb/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -306,10 +306,10 @@ def write(self, data, params=None, expected_response_code=204,
headers = self._headers
headers['Content-Type'] = 'application/octet-stream'

if params:
precision = params.get('precision')
else:
precision = None
final_params = self._get_default_params()
final_params.update(params or {})

precision = final_params.get('precision')

if protocol == 'json':
data = make_lines(data, precision).encode('utf-8')
Expand All @@ -319,15 +319,20 @@ def write(self, data, params=None, expected_response_code=204,
data = ('\n'.join(data) + '\n').encode('utf-8')

self.request(
url="write",
url='write',
method='POST',
params=params,
params=final_params,
data=data,
expected_response_code=expected_response_code,
headers=headers
)
return True

def _get_default_params(self):
return {
'db': self._database,
}

@staticmethod
def _read_chunked_response(response, raise_errors=True):
result_set = {}
Expand Down Expand Up @@ -391,25 +396,28 @@ def query(self,
:returns: the queried data
:rtype: :class:`~.ResultSet`
"""
if params is None:
params = {}
final_params = self._get_default_params()
final_params.update(params or {})

final_params['q'] = query

params['q'] = query
params['db'] = database or self._database
if database is not None:
final_params['db'] = database

if epoch is not None:
params['epoch'] = epoch
final_params['epoch'] = epoch

if chunked:
params['chunked'] = 'true'
final_params['chunked'] = 'true'
if chunk_size > 0:
params['chunk_size'] = chunk_size
final_params['chunk_size'] = chunk_size

if query.lower().startswith("select ") and " into " in query.lower():
method = "POST"

response = self.request(
url="query",

method=method,
params=params,
data=None,
Expand Down Expand Up @@ -529,9 +537,10 @@ def _write_points(self,
else:
data = points

params = {
'db': database or self._database
}
params = self._get_default_params()

if database is not None:
params['db'] = database

if time_precision is not None:
params['precision'] = time_precision
Expand Down