すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:ApsaraDB RDS for PostgreSQLインスタンスでクエリを実行したときに「ERROR: 一時的なファイルサイズがtemp_file_limit (1024kB) を超えている」というエラーメッセージが表示された場合はどうすればよいですか。

最終更新日:Jan 23, 2024

問題の説明

ApsaraDB RDS for PostgreSQLインスタンスでクエリを実行すると、次のエラーメッセージが表示されます。

エラー: 一時的なファイルサイズがtemp_file_limit (1024kB) を超えています

原因

大きな一時ファイルは、クエリ中に生成され得る。 一時ファイルのサイズが、RDSインスタンスに指定されているtemp_file_limitパラメーターの値よりも大きくなっています。 その結果、クエリは中断される。

temp_file_limitパラメーターの詳細については、「temp_file_limit (integer) 」をご参照ください。

ソリューション

temp_file_limitパラメーターの値を大きくします。

次のいずれかの方法を使用して、パラメーターを変更できます。

  • グローバル修正

    ApsaraDB RDSコンソールにログインし、パラメーターを変更します。 詳細については、「ApsaraDB RDS For PostgreSQLインスタンスのパラメーターの変更」をご参照ください。

    説明

    RDSインスタンスのtemp_file_limitパラメーターのデフォルト値は、RDSインスタンスのメモリ容量です。 次の計算を使用して値を取得できます: {DBInstanceClassMemory/1024}

  • セッション固有の変更

    RDSインスタンスにログインし、次のコマンドを実行してパラメーターを変更します。

    SET temp_file_limit ='1GB';

使用上の注意

temp_file_limitパラメーターが -1に設定されている場合、一時ファイルのサイズは無制限です。 複雑なクエリ中にディスク容量が枯渇しないように、パラメーターを -1に設定したり、パラメーターを大きな値に設定したりしないことをお勧めします。