MCPcopy Create free account
hub / github.com/apache/cassandra-nodejs-driver / getBatchStatementInfo

Function getBatchStatementInfo

lib/tracker/request-logger.js:188–222  ·  view source on GitHub ↗
(queries, execOptions, maxQueryLength, maxParameterLength)

Source from the content-addressed store, hash-verified

186}
187
188function getBatchStatementInfo(queries, execOptions, maxQueryLength, maxParameterLength) {
189 // This part of the message is not accounted for in "maxQueryLength"
190 let message = (execOptions.isBatchLogged() ? 'LOGGED ' : '') + 'BATCH w/ ' + queries.length +
191 (!execOptions.isPrepared() ? ' not prepared' : '') + ' queries (';
192 let remaining = maxQueryLength;
193 let i;
194
195 for (i = 0; i < queries.length && remaining > 0; i++) {
196 let q = queries[i];
197 const params = q.params;
198 if (typeof q !== 'string') {
199 q = q.query;
200 }
201
202 if (i > 0) {
203 message += ',';
204 remaining--;
205 }
206
207 const queryLength = Math.min(remaining, q.length);
208 message += q.substr(0, queryLength);
209 remaining -= queryLength;
210
211 if (remaining <= 0) {
212 break;
213 }
214
215 const parameters = getParametersInfo(params, remaining, maxParameterLength);
216 remaining -= parameters.length;
217 message += parameters;
218 }
219
220 message += i < queries.length ? ',...)' : ')';
221 return message;
222}
223
224function getParametersInfo(params, remaining, maxParameterLength) {
225 if (remaining <= 3) {

Callers 1

getStatementInfoFunction · 0.85

Calls 3

getParametersInfoFunction · 0.85
isBatchLoggedMethod · 0.65
isPreparedMethod · 0.65

Tested by

no test coverage detected