boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Database版 - Mysterious PgSQL 8.3 crash
相关主题
好像很少有人讨论 PostgreSql的
pgsql 里面怎么 include 另外一个 sql 文件?
如何进行Oracle8i的Embedded SQL?
关系型数据库还能用二十年吗
Mysterious PgSQL 8.3 crash
two general C++ question
也说两个面试题
无法编译一个文件
Thread safe strcpy ??
下面的code怎么样improve?
相关话题的讨论汇总
话题: buffer话题: crash话题: sprintf话题: create话题: pgsql
进入Database版参与讨论
1 (共1页)
c*****t
发帖数: 1879
1
写 stored procedure 的时候,发现 sprintf, elog, ereport 等统统
会造成 crash 。可是 8.2.6 底下好好的。比如
strcpy (buffer, "test"); 执行没问题,但是
sprintf (buffer, "%s", "test"); 就 crash。
例如:
CREATE FUNCTION TCDB.t_create_table(cstring) RETURNS void
AS '/projects/workspace/tcdb/src/server/libmy_utils.dll', 't_create_table'
LANGUAGE C STRICT;
Datum t_create_table (PG_FUNCTION_ARGS)
{
char buffer[8192];
sprintf (buffer, "%s", "test"); // 这一行 crash
// strcpy (buffer, "test"); 没问题
puts (buffer
c*********3
发帖数: 197
2
我用8.2.6; 刚接触PostgreSQL的C functions. 感觉是不一样。不一定是sprintf的问
题。初使化一下buffer试一下
c*****t
发帖数: 1879
3
Not that problem. The problem was library builder mismatch
(8.3 distribution was built using VC++, 8.2.6 was built using
MinGW).

【在 c*********3 的大作中提到】
: 我用8.2.6; 刚接触PostgreSQL的C functions. 感觉是不一样。不一定是sprintf的问
: 题。初使化一下buffer试一下

c*********3
发帖数: 197
4
这我就不知道了。 我是在Linux 上用
1 (共1页)
进入Database版参与讨论
相关主题
下面的code怎么样improve?
请问这是什么干的啊?
How difficult is it to write your own sprintf ? (转载)
问个char*的问题
How difficult is it to write your own sprintf ?
下面的code怎么样improve?
下面的code怎么样improve?
调查,最流行10个编程语言,你常用几种?
bloomberg onsite 面经
明天ONSITE攒人品,发面试知识点总结!!
相关话题的讨论汇总
话题: buffer话题: crash话题: sprintf话题: create话题: pgsql