Commit 0f2e6ce5 authored by yiwenshao's avatar yiwenshao

modify insert_lib.cc:my_encrypt_item_layers, and…

modify insert_lib.cc:my_encrypt_item_layers, and debug/final_load.cc:local_wrapper to handler NULL in the final_load phase
parent a3209cd2
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
#oAGG: HOM #oAGG: HOM
#oASHE: ASHE #oASHE: ASHE
[onions for num] [onions for num]
oDET: DETJOIN DET oDET: DET
oOPE: OPE oOPE: OPE
oAGG: HOM oAGG: HOM
oASHE: ASHE oASHE: ASHE
...@@ -15,7 +15,7 @@ oASHE: ASHE ...@@ -15,7 +15,7 @@ oASHE: ASHE
#oDET: DETJOIN DET RND #oDET: DETJOIN DET RND
#oOPE: OPEFOREIGN OPE RND #oOPE: OPEFOREIGN OPE RND
[onions for str] [onions for str]
oDET: DETJOIN DET RND oDET: DET
oOPE: OPE #oOPE: OPE
oSWP: SEARCH #oSWP: SEARCH
[end] [end]
loadCount:5 loadCount:1
pipelineCount:2 pipelineCount:1000
useASHE:true useASHE:true
useHOM:false useHOM:false
useOPE:false useOPE:false
useSWP:true useSWP:true
useDET:false useDET:true
useSalt:true useSalt:true
other:1 other:1
...@@ -270,6 +270,10 @@ void local_wrapper(const Item &i, const FieldMeta &fm, Analysis &a, ...@@ -270,6 +270,10 @@ void local_wrapper(const Item &i, const FieldMeta &fm, Analysis &a,
const uint64_t salt = fm.getHasSalt() ? randomValue() : 0; const uint64_t salt = fm.getHasSalt() ? randomValue() : 0;
uint64_t IV = salt; uint64_t IV = salt;
for (auto it : fm.orderedOnionMetas()) { for (auto it : fm.orderedOnionMetas()) {
if(RiboldMYSQL::is_null(i)){
l.push_back(RiboldMYSQL::clone_item(i));
continue;
}
const onion o = it.first->getValue(); const onion o = it.first->getValue();
OnionMeta * const om = it.second; OnionMeta * const om = it.second;
std::string annoOnionName = om->getAnonOnionName(); std::string annoOnionName = om->getAnonOnionName();
......
init: 1##1519380349
loadSchema: 0##1519380349
loadtablemeta: 0##1519380349
usedField: YMVPOGTCMAoEq
usedField: WJITAYZUCMoASHE
useSalt: cdb_saltGIWHBGSUBM
usedField: SHOGVFSQPDoEq
useSalt: cdb_saltWVSRCZCPRD
initGfb: 0##1519380349
choosenDecryptionOnion: oASHE
choosenDecryptionOnion: oEq
getReturnMeta: 0##1519380349
transform: 0##1519380349
descryption: 0##1519380349
load_files: 0##1519380349
init: 1##1519380625
loadSchema: 0##1519380625
loadtablemeta: 0##1519380625
usedField: YMVPOGTCMAoEq
usedField: WJITAYZUCMoASHE
useSalt: cdb_saltGIWHBGSUBM
usedField: SHOGVFSQPDoEq
useSalt: cdb_saltWVSRCZCPRD
initGfb: 0##1519380625
choosenDecryptionOnion: oASHE
choosenDecryptionOnion: oEq
getReturnMeta: 0##1519380625
transform: 0##1519380625
descryption: 0##1519380625
load_files: 0##1519380625
reencryptionAndInsert: 0##1519380625
onionComputed: oOrder::1
onionComputed: oADD::1
onionComputed: oINVALID::2
init: 3##1519380678
loadSchema: 2##1519380682
loadtablemeta: 0##1519380683
usedField: YMVPOGTCMAoEq
usedField: WJITAYZUCMoASHE
useSalt: cdb_saltGIWHBGSUBM
usedField: SHOGVFSQPDoEq
useSalt: cdb_saltWVSRCZCPRD
initGfb: 0##1519380683
choosenDecryptionOnion: oASHE
choosenDecryptionOnion: oEq
getReturnMeta: 0##1519380683
transform: 0##1519380683
descryption: 0##1519380683
load_files: 1##1519380683
init: 1##1519381384
loadSchema: 0##1519381384
loadtablemeta: 0##1519381384
usedField: YMVPOGTCMAoEq
usedField: WJITAYZUCMoASHE
useSalt: cdb_saltGIWHBGSUBM
usedField: SHOGVFSQPDoEq
useSalt: cdb_saltWVSRCZCPRD
initGfb: 0##1519381384
choosenDecryptionOnion: oASHE
choosenDecryptionOnion: oEq
getReturnMeta: 0##1519381384
transform: 0##1519381384
descryption: 0##1519381384
load_files: 0##1519381384
reencryptionAndInsert: 0##1519381384
onionComputed: oINVALID::2
...@@ -3,7 +3,10 @@ ...@@ -3,7 +3,10 @@
Item * Item *
my_encrypt_item_layers(const Item &i, onion o, const OnionMeta &om, my_encrypt_item_layers(const Item &i, onion o, const OnionMeta &om,
const Analysis &a, uint64_t IV) { const Analysis &a, uint64_t IV) {
assert(!RiboldMYSQL::is_null(i)); // assert(!RiboldMYSQL::is_null(i));
if(RiboldMYSQL::is_null(i)) {
return RiboldMYSQL::clone_item(i);
}
const auto &enc_layers = a.getEncLayers(om); const auto &enc_layers = a.getEncLayers(om);
assert_s(enc_layers.size() > 0, "onion must have at least one layer"); assert_s(enc_layers.size() > 0, "onion must have at least one layer");
const Item *enc = &i; const Item *enc = &i;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment