【发布时间】:2018-11-22 20:16:07
【问题描述】:
我在 PostgreSQL 数据库上运行批处理时遇到空间问题。
但是,df -h 命令显示机器有足够的空间
以下是确切的错误
org.springframework.dao.DataAccessResourceFailureException: PreparedStatementCallback; SQL [INSERT into BATCH_JOB_INSTANCE(JOB_INSTANCE_ID, JOB_NAME, JOB_KEY, VERSION) values (?, ?, ?, ?)]; ERROR: could not extend file "base/16388/16452": No space left on device
Hint: Check free disk space.
是什么导致了这个问题?
编辑
postgres 数据目录为/var/opt/rh/rh-postgresql96/lib/pgsql/data
df -h /var/opt/rh/rh-postgresql96/lib/pgsql/data
Filesystem Size Used Avail Use% Mounted on
/dev/xvda2 100G 63G 38G 63% /
【问题讨论】:
-
您的数据目录在哪里? (psql 中的
show data_directory;会告诉你) -
数据目录是/var/opt/rh/rh-postgresql96/lib/pgsql/data。数据目录的当前大小为 15GB
-
您应该在
df -h的输出中包含 that 目录(顺便说一句:您也可以从控制台复制和粘贴 text。不需要使用图片) -
@a_horse_with_no_name : 编辑帖子并添加数据目录空间
-
而且,由于您使用的是 ORM 框架,因此 temptable-explosion 可能是某些 Carthesian 产品的结果,由您的查询中的逻辑错误引起。
标签: postgresql database-administration postgresql-9.6