mirror of https://github.com/citusdata/citus.git
Escape/Unescape sql comment chars
parent
80dd73711e
commit
3cfa197f69
|
@ -26,6 +26,7 @@
|
||||||
#include "utils/builtins.h"
|
#include "utils/builtins.h"
|
||||||
#include "utils/json.h"
|
#include "utils/json.h"
|
||||||
#include "distributed/utils/attribute.h"
|
#include "distributed/utils/attribute.h"
|
||||||
|
#include "common/base64.h"
|
||||||
|
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
|
||||||
|
@ -214,7 +215,7 @@ AttributeQueryIfAnnotated(const char *query_string, CmdType commandType)
|
||||||
text *tenantIdTextP = ExtractFieldTextP(jsonbDatum, "tId");
|
text *tenantIdTextP = ExtractFieldTextP(jsonbDatum, "tId");
|
||||||
if (tenantIdTextP != NULL)
|
if (tenantIdTextP != NULL)
|
||||||
{
|
{
|
||||||
char *tenantId = text_to_cstring(tenantIdTextP);
|
char *tenantId = UnescapeCommentChars(text_to_cstring(tenantIdTextP));
|
||||||
strcpy_s(attributeToTenant, sizeof(attributeToTenant), tenantId);
|
strcpy_s(attributeToTenant, sizeof(attributeToTenant), tenantId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -245,12 +246,15 @@ AnnotateQuery(char *queryString, char *partitionColumn, int colocationId)
|
||||||
return queryString;
|
return queryString;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char *commentCharsEscaped = EscapeCommentChars(partitionColumn);
|
||||||
StringInfo escapedSourceName = makeStringInfo();
|
StringInfo escapedSourceName = makeStringInfo();
|
||||||
escape_json(escapedSourceName, partitionColumn);
|
|
||||||
|
escape_json(escapedSourceName, commentCharsEscaped);
|
||||||
|
|
||||||
StringInfo newQuery = makeStringInfo();
|
StringInfo newQuery = makeStringInfo();
|
||||||
appendStringInfo(newQuery, ATTRIBUTE_STRING_FORMAT, escapedSourceName->data,
|
appendStringInfo(newQuery, ATTRIBUTE_STRING_FORMAT, escapedSourceName->data,
|
||||||
colocationId);
|
colocationId);
|
||||||
|
|
||||||
appendStringInfoString(newQuery, queryString);
|
appendStringInfoString(newQuery, queryString);
|
||||||
|
|
||||||
return newQuery->data;
|
return newQuery->data;
|
||||||
|
|
Loading…
Reference in New Issue