diff --git a/src/client/inc/tsclient.h b/src/client/inc/tsclient.h index 0bfbf3f946a4a1428549a493ab990a2be2173266..29624e4db2ad33ed76d3b703bc870d18fcc3ab28 100644 --- a/src/client/inc/tsclient.h +++ b/src/client/inc/tsclient.h @@ -232,6 +232,7 @@ typedef struct SQueryInfo { typedef struct { int command; uint8_t msgType; + char reserve1[3]; // fix bus error on arm32 bool autoCreated; // create table if it is not existed during retrieve table meta in mnode union { @@ -244,8 +245,10 @@ typedef struct { char * curSql; // current sql, resume position of sql after parsing paused int8_t parseFinished; + char reserve2[3]; // fix bus error on arm32 int16_t numOfCols; + char reserve3[2]; // fix bus error on arm32 uint32_t allocSize; char * payload; int32_t payloadLen; @@ -255,7 +258,9 @@ typedef struct { int32_t numOfParams; int8_t dataSourceType; // load data from file or not + char reserve4[3]; // fix bus error on arm32 int8_t submitSchema; // submit block is built with table schema + char reserve5[3]; // fix bus error on arm32 STagData tagData; // NOTE: pTagData->data is used as a variant length array SName **pTableNameList; // all involved tableMeta list of current insert sql statement. diff --git a/src/client/src/tscParseInsert.c b/src/client/src/tscParseInsert.c index a5906f5539a8d40b055f580933feb4b1184331f1..d071520b88b2d961e062766233295530fe48fd0f 100644 --- a/src/client/src/tscParseInsert.c +++ b/src/client/src/tscParseInsert.c @@ -307,7 +307,8 @@ int32_t tsParseOneColumnData(SSchema *pSchema, SStrToken *pToken, char *payload, return tscInvalidSQLErrMsg(msg, "illegal float data", pToken->z); } - *((float *)payload) = (float)dv; +// *((float *)payload) = (float)dv; + SET_FLOAT_VAL(payload, dv); } break; diff --git a/src/inc/taosmsg.h b/src/inc/taosmsg.h index 721b9ca6054d7a1fca12304eef33a2a0ce00ddfc..4a3181a23bb304d5c29bea6fa7ef3175273e27be 100644 --- a/src/inc/taosmsg.h +++ b/src/inc/taosmsg.h @@ -616,6 +616,7 @@ typedef struct { int32_t maxtablesPerVnode; int32_t maxVgroupsPerDb; char arbitrator[TSDB_EP_LEN]; // tsArbitrator + char reserve[2]; // to solve arm32 bus error char timezone[64]; // tsTimezone int64_t checkTime; // 1970-01-01 00:00:00.000 char locale[TSDB_LOCALE_LEN]; // tsLocale