linux 64位系统,C语言调用外部函数,返回值不对的问题
centos 64位操作系统,C 开发的程序调用一个外部函数(在另外一个 C 文件中定义),因为没有添加该外部函数的声明,导致函数返回的值不正确。示例如下:两个源文件,main.c 和 func.c,内容如下:main.c:#include...继续阅读
centos 64位操作系统,C 开发的程序调用一个外部函数(在另外一个 C 文件中定义),因为没有添加该外部函数的声明,导致函数返回的值不正确。示例如下:两个源文件,main.c 和 func.c,内容如下:main.c:#include...继续阅读
在 PostgreSQL 数据库中,relation 关联的所有信息存储在几个不同的 forks 里面,每个 fork 都包含一个特定类型的数据。首先一个 fork 表示一个文件,它的文件名由一个数字 ID(oid)表示,可以通过对应于 f...继续阅读
psql 和 pg_dump 等工具连接PostgreSQL数据库时,通过-W参数,在终端以交互方式输入密码,很多时候,我们希望使用脚本调用psql或者pg_dump做一些自动化的操作,那么此时如何以非交互方式指定密码?方法一,环境变量设置...继续阅读
源码文件:src/backend/access/transam/subtrans.c源码版本:PG 13.31. 子事务的使用PG 提供了一组 savepoint 相关的命令用于子事务操作,子事务相关例子如下:定义一个保存点:savepoi...继续阅读
源码版本:PG 13.3源码文件:dsm.c dsm_impl.cPostgreSQL 是基于进程模型的数据库内核实现,进程之间的通信、数据传输通常需要借助共享内存实现。在程序运行过程中,比如并发任务需要创建多个工作进程,工作进程与 bac...继续阅读
1. PostgreSQL 基础用法PostgreSQL 安装部署PostgreSQL SQL 语法函数存储过程触发器视图索引btree索引gin索引gist索引PostgreSQL 高可用PostgreSQL 插件(extenstion)...继续阅读
源码版本:PG 13.3源码文件:slot.c slotfuncs.c1. 什么是 PG 复制槽?PG 复制槽用于记录主备流复制的状态,主要目的是防止 wal 日志被过早的删除,导致备库流复制中断。复制槽是有状态的,能够持久化到磁盘上,允许...继续阅读
源码版本:PG 13.3源码文件:src/backend/utils/time/snapmgr.c1. 事务快照数据结构typedef struct SnapshotData{SnapshotType snapshot_type; /* t...继续阅读
环境:CentOS 7.9Python 环境:Python 3.9.5Python 脚本经常由于环境变化、依赖包没装、Python 版本不同等原因,在不同的机器上无法正常运行。pyinstaller 工具提供了方法把 Python 脚本、依...继续阅读
源码版本:PG 13.3PG 支持两阶段提交事务(2PC),本文基于 PG 13.3 源码,简单分析 2PC 事务处理相关的逻辑。1. 两阶段事务提交的处理过程2PC 各阶段的命令调用主要包含如下三个:prepare trancation ...继续阅读