New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CSVダウンロード及びグラフ表示が完了しない #51
Comments
いただいたプルリクエストでは
|
その通りですね! |
なるほど! |
ありがとうございます!! |
キャッシュの無効化に https://github.com/WordPress/WordPress/blob/4.5.2/wp-includes/query.php#L3586-L3608 お手間でなければ検証にご協力頂けましたら助かります! |
なるほど…。情報ありがとうございます! ちなみに、検証はどのように行われていますでしょうか? |
そうかフィルターで書き換えられますね!
add_action( 'init', function () {
$form_key = 1234;
$q = 10000;
for ( $i = 1; $i <= $q; $i ++ ) {
$post_id = wp_insert_post(
array(
'post_type' => 'mwf_' . $form_key,
'post_content' => '',
'post_title' => $i,
'post_status' => 'publish',
) );
update_post_meta( $post_id, 'A', mt_rand() );
!( $i % 2 ) && update_post_meta( $post_id, 'B', mt_rand() );
!( $i % 3 ) && update_post_meta( $post_id, 'C', mt_rand() );
!( $i % 4 ) && update_post_meta( $post_id, 'D', mt_rand() );
!( $i % 5 ) && update_post_meta( $post_id, 'E', mt_rand() );
}
} ); |
コードありがとうございます!これで僕もテストしてみます。 |
ご連絡ありがとうございます! |
その後挙動を確認していたのですが、どうもプルリクいただいた 1a767f2 が正しく動作していないような気がします。約11,000件のデータを登録して全件ダウンロードしたところ、なぜか約3,000件のデータしかダウンロードされませんでした(メモリ使用量約111MB)。 次のように修正したところ全件ダウンロードできました(メモリ使用量約230MB)。 |
ご指摘の通り私がやらかしていました… 230MBはPRなしの状態から変わってないという事でしょうか? |
プルリク無し(v2.8.2)の段階だと約220MBになるので逆にちょっと増えてますね^^; |
orz... |
手元では改善がみられるような差が出ました。
計測は以下のコードで。 class MW_WP_Form_CSV {
public function download() {
$mem_start = memory_get_usage();
$mem_peak_start = memory_get_peak_usage();
// ダウンロード処理
$mem_end = memory_get_usage();
$mem_peak_end = memory_get_peak_usage();
$mem_delta = $mem_end - $mem_start;
$mem_peak_delta = $mem_peak_end - $mem_peak_start;
exit; // break point
}
} |
なるほど!ありがとうございます。僕の計測方法がおかしかったみたいですね。ご提示いただいた方法で、僕の方でも再度計測してみます。ありがとうございます! |
とりあえず最新の修正版だけテストしましたが、明らかに2人の結果に違いがあるように見えます。僕が何か間違っているのでしょうか…。#54 |
返答が遅れて大変失礼致しました! 再現性を共有できないのが問題ですね。 |
DBに問い合わせデータが大量に溜まっている状態で、CSVの全件ダウンロードやグラフを表示しようとすると、サーバーから応答待ちのまま接続が切断される等の現象が起き、正常に完了しません。
PHP の設定の
memory_limit
を増やした場合、リクエストが正常に完了します。よってメモリ制限に引っかかっているのではないかと推測されます。
The text was updated successfully, but these errors were encountered: