Closed 0-kaz closed 5 months ago
PG15でも発生することを確認。
hoge=# select * from test12g where memo = 'WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/';
aid | id | cat | x | y | memo | z | md5
------+--------+-----+-------------------+-------------------+------------------------------------------------------------------------------+--------------------+----------------------------------
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | 518.9477007458675 | d87d3902e1c4efdc9d79e94c4921bb40
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | -840.0900214165869 | 0b32f1a9efe5edf3dd2f38b0c0052bfe
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | -585.981242165892 | c589c3a8f99401b24b9380e86d939842
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | 115.48537906049069 | db261d4f615f0e982983be499e57ccda
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | 455.0818481739061 | 1e9491470749d5b0e361ce4f0b24d037
(5 rows)
hoge=# select * from test12p where memo = 'WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/';
aid | id | cat | x | y | memo | z | md5
------+--------+-----+-------------------+-------------------+------------------------------------------------------------------------------+--------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | 518.9477007458675 | d87d3902e1c4efdc9d79e94c4921bb40
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | -840.0900214165869 | 0b32f1a9efe5edf3dd2f38b0c0052bfe
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | -585.981242165892 | c589c3a8f99401b24b9380e86d939842
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | 115.48537906049069 | db261d4f615f0e982983be499e57ccda
2047 | 179247 | bbb | 419.8411067108816 | 276.0799672808871 | WyFqoCL42iYmn3ZrXM7F74hfSDHg0dNabq6RzrbB7gNd5zt3Pi8qOgRhQG2Ki4KHAOGCREvqjI4/ | 455.0818481739061 | 1e9491470749d5b0e361ce4f0b24d037
(5 rows)
なんだか、こんな風になってますね。
char(200)
であるmd5
の後ろは空白のパディングが必要なのですが、GPUでProjectionしたデータに関しては付いていません。
(でも文字列比較などでは、末尾の空白は除去して処理するので、あまり意味のないデータではあります)
ちょっと修正方法を考えてみますね。
e9b228b4d38283baa098e572a23475935dab0bcb でサクッと直してみました。 CPU fallbackではなく、bpchar型のwrite_datumハンドラで末尾の空白パディングを入れるようにしています。
たぶんこれ、numericで桁数がCPUの時と合わない問題も同様に対処できる気が・・・。
確認したのですが、解消確認出来ませんでした。不一致の要因引き続き確認しています。
NATURAL JOIN実行の前にを入れてmd5の列を空にしても不一致が生じているので、どうやらmd5の結果の不一致が原因ではないのかもしれません。
UPDATE fallback_enlarge SET md5 = '';
NATURAL JOINの条件からmemo LIKE '%ab%'
を取り除くと本現象発生しませんでした。
DROP TABLE IF EXISTS test12p;
DROP TABLE IF EXISTS test12g;
SET pg_strom.enabled = on;
SELECT * INTO test12g
FROM fallback_data d NATURAL JOIN fallback_enlarge l
WHERE l.aid < 2500;
SET pg_strom.enabled = off;
SELECT * INTO test12p
FROM fallback_data d NATURAL JOIN fallback_enlarge l
WHERE l.aid < 2500;
ちょっと最新版で試してもらえますか?
(なお海外の環境では再現させられませんでした)
6ee93d6dff13036ac5e37ce38542f7586e02320d では再現しないことを確認しました。