バージョン選択

フォーラム

メニュー

オンライン状況

36 人のユーザが現在オンラインです。 (13 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 36
もっと...

サイト内検索

バグ報告 > 管理機能 > order_idが飛ぶことがある(連続しない)

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
homan
投稿日時: 2009/6/19 17:01
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
order_idが飛ぶことがある(連続しない)
とある案件で、不可解な?現象が起こっております。


<現象>
通常はorder_idは連番で振られるはずなのですが、
dtb_orderのテーブル、及びdtb_order_tempのテーブルで
例えば「30、31、33、35、36…」とorder_idが連続されないことがあります(そこそこの割合で発生しています)。

決済モジュールを導入している案件なのですが、
dtb_orderにもdtb_order_tempにも上記から抜けた
「32」や「34」などの情報がなく、
理由もはっきりしないのでなんだか気持悪いのです。
(決済モジュールを行き来したりすると、なったりするもんでしょうか)

これに関連するかどうかわかりませんが、
欠番した番号(仮に34とします)とその次の番号(この場合35番)の両方で決済会社側の管理画面では課金になっているにもかかわらず、EC-CUBE側では35番しか上がってきていないこともありました。(34番はDB内に存在しませんでした)

今のところ情報が少なすぎてなぜこうなるのか、というのをお客様に説明できないでいます。何かご存じの方がいらっしゃれば、小さなことでも構いませんので、お教えいただけますと幸いです。

<環境>
EC-CUBE 2.2.0-beta
PHP 5.2.8
PostgreSQL 8.3.5


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

ramrun
投稿日時: 2009/6/19 17:47
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: order_idが飛ぶことがある(連続しない)
トランザクションでのnextvalってrollbackで戻らなかったと思いますけど...
mysqlでもauto incrementはbeginで確保されて、rollbackで戻らないので次の数字になっちゃいます。

どうしてrollbackしちゃったのかは調査しないといけないかと。
勘違いでしたらごめんなさい。
homan
投稿日時: 2009/6/19 17:59
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: order_idが飛ぶことがある(連続しない)
引用:

ramrunさんは書きました:
トランザクションでのnextvalってrollbackで戻らなかったと思いますけど...
mysqlでもauto incrementはbeginで確保されて、rollbackで戻らないので次の数字になっちゃいます。

どうしてrollbackしちゃったのかは調査しないといけないかと。
勘違いでしたらごめんなさい。


ご返信ありがとうございます!
なるほど、そういうことであれば一応正常な動き・・・ということでしょうか。
とりあえず番号が被りさえしなければいい、ということで考えれば問題ないのかなぁと思いました。

あと決済の件ですが、「/data/site.log」をみると
----------------------
[/shopping/load_payment_module.php] access error. from IPアドレス
----------------------
というログがのこっていて、どうやら以下のスレッドと同じような現象が起こっているのかもと思っています。

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=3821&forum=10

弊社の環境では上記のPHPにアクセスしても特にエラーはなく、
全てのお客様において不具合が起こっている様子がないことから、
ある条件下では[/shopping/load_payment_module.php]にアクセスした際に、真っ白になるなどの現象が発生している可能性も考えて、調査進めたいと思います。


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

ramrun
投稿日時: 2009/6/19 19:04
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: order_idが飛ぶことがある(連続しない)
一応ソース貼っときます。

↓のページの一番下と、

PostgreSQL 8.3.5文書 第 9章関数と演算子 シーケンス操作関数
http://www.sraoss.co.jp/PostgreSQL/Manual/document/pg835doc/html/functions-sequence.html

キャッシュの設定にもよるみたいです。

PostgreSQL 8.3.5文書 リファレンス CREATE SEQUENCE
http://www.sraoss.co.jp/PostgreSQL/Manual/document/pg835doc/html/sql-createsequence.html
seasoft
投稿日時: 2009/6/19 23:26
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7332
Re: order_idが飛ぶことがある(連続しない)
かなり斜め読みでレスしています。全く外しているかもですが・・・

注文過程で dtb_order_temp のレコードまでは生成したけれども、最終的に注文完了まで至らなかった(dtb_order は生成されなかった)というケースでは?

そういったケースで、dtb_order_temp に挿入されたレコードが、削除されるのか検証をとったことはありませんが、何かそういったルートがありそうな予感がします。


もっとも、
> とりあえず番号が被りさえしなければいい、ということで考えれば問題ないのかなぁと思いました。
がごもっともだと思います。ただ、原因が不明だと気持ち悪いですよね。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

popo
投稿日時: 2009/6/22 21:52
対応状況: −−−
長老
登録日: 2008/10/1
居住地:
投稿: 189
Re: order_idが飛ぶことがある(連続しない)
注文番号が飛んでしまう症状は、私も何度も経験した事があります。

私の経験上では、お客さんが連続して注文ボタンを教えてしまった場合、注文番号が飛んでしまう事があります。

私の場合は、sendmailがビジーな状態の時に、お客さんが注文ボタンを押した時に、なかなか注文完了画面が表示されずに、何度もお客さんがボタンを押してしまった場合に、注文番号が飛んでしまう症状が発生しました。
時には、5〜6数字が飛んでしまっている事もありました(^-^;


恐らくhomanさんの案件も、連続して注文ボタンを押したから、注文番号が飛んでしまう現象が発生しているのだと思います。
参考になれば幸いです。
homan
投稿日時: 2009/6/22 22:18
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: order_idが飛ぶことがある(連続しない)
みなさん、ありがとうございます!!!

popoさんがおっしゃる通り、数回クリックした可能性はありますね。
クレジットカード決済で多重購入になってしまっても、
最終的に消し込みしなければ何とかなると思っていましたが、
なんとデビットカードもクレジットカード支払いから
入力して利用できるらしく、それは防ぎようがありませんでした

ログ等をもう少し追っかけてみようと思います〜!


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

tao_s
投稿日時: 2009/6/22 23:46
対応状況: −−−
仙人
登録日: 2008/8/20
居住地: 東京
投稿: 783
Re: order_idが飛ぶことがある(連続しない)
どこの決済サービスだったか忘れましたが、一度オーソリに失敗すると、その時送ったorder_idは二度と使えなくなってしまい、再度order_idを発行していた様な気がします。


----------------
EC-CUBEカスタマイズ相談してください。
緊急のEC-CUBEの障害対応
EC-CUBEカスタマイズブログ

seasoft
投稿日時: 2009/6/23 7:24
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7332
Re: order_idが飛ぶことがある(連続しない)
当方の試験環境でも発生していますね。多重クリックを行なうことは無いはずので、他にも原因があるかも。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は59,210名です
総投稿数は95,090件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
2035
4
468
1979
5
yuh
1612
6
umebius
1562
7
red
1391
8
h_tanaka
971
9
fukap
907
10
tsuji
863
11
shutta
835
12 ramrun 789
13
tao_s
783
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.