金仓老旧项目改造-5

正巧收到了trae的solo比赛信息,下午就把开发模式改为了solo模式试试。但是先吐槽一点,solo模式下就没有聊天和builder之分了,我想聊天的需求就得不到满足了,我的办法是在每句话的后面都加一句暂停。虽然麻烦一点,但是好用。另外,转变之后的一个变化是编辑器和聊天框对调了位置。现在聊天框在左边了。除了这个以外还没有发现什么不一样的,慢慢体会一下。发现一个问题。就是切换了这个模式之后,之前已经解决的问题,现在又出现了,这块智能再重新教学一下。

今天真的收获很大,问题逐渐发现了。以下是珊根据我们的排查过程总结的结果,记录下来以后可以参考。

问题分析总结

**根本原因**

`sys_config` 是金仓数据库的**系统视图**(位于 `sys_catalog` schema),不是应用表:

```sql

CREATE OR REPLACE VIEW sys_catalog.sys_config AS

SELECT pg_config.name, pg_config.setting FROM pg_config;

```

**问题机制**

  • 应用查询 `sys_config` 时,由于 **search_path** 包含系统 schema

  • 数据库找到了 `sys_catalog.sys_config` 系统视图

  • 该视图只有 `name`/`setting` 字段,缺少应用需要的 `config_code` 等字段

  • 导致配置初始化失败

**关键启示**

  • 金仓/PostgreSQL 中同名对象可能存在于不同 schema

  • 系统视图 vs 应用表容易造成混淆

  • **始终显式指定 schema** 是最佳实践

感觉这个是我们这次改造遇到的第一个卡点,并且非常隐蔽,如果不是珊真的很难发现,这个问题卡了两天,我觉得是记录blog的一个最关键的点,今天运气不错。很好,很开心。

另外还了解了spring.factories的机制,可以通过他把applicationlisttener都注册进来,在程序启动的时候运行,后面如果有问题不知道什么原因的时候,也可以从factories这块尝试一下是否有解决的思路。

程序员不就应该开开心心的跟代码沟通吗?为什么现在的公司都在扯皮呢。刚刚插进来一个会,很无聊,又是谈需求说了半天,大家没有一个人具体说需求是什么,都是在重复领导说过的话,一遍遍的重复。然后会议就结束了,接下来就是下一个循环,再下一次会的时候再继续重复这个模式,直到最后实在不行了,然后随便应付一下,项目交付就完了。无限的循环,这就是外行指导内行的悲哀呀。也是现在行业的现状。有了ai并不能避免这种现象,反而会使这种现象更加严重。算了这些政治话题就不讲了,还是继续工作吧。修改了配置之后还是不好使,看来信息的优先级要高于currentSchema中的指定。还是老老实实在sql上添加吧,但是这两个隐患,一个是这个代码的修改可能会影响mysql版本,但是我马上确认了一下,这个忧虑是多余的,因为这个类就已经加上了kingbase的前缀所以只对金仓有效,另一个就是有可能在其它sql中也会有类似的问题,并且这个地方用的是原始sql的方式,其它地方如果是用的mybatisplus的方式,可能还要研究新的处理办法。这个可以后面重点关注一下。

奇怪,现在修改代码珊又开始编译很多包了?是什么原因呢?暂时先不考虑了,记个备忘吧,明天有空的时候再解决。

相关推荐
ZYJCSZKJ2 分钟前
AI数字人直播系统的技术架构与多方言交互实现方案——基于广西区域商业场景的工程实践
人工智能·架构·交互
珐恩AI-人工智能9 分钟前
大模型意图召回偏差分析:GEO如何解决“有收录却不触发问答曝光”的难题
大数据·前端·人工智能·html·流量运营·geo优化
Java小白笔记15 分钟前
Windows系统免软件命令激活
java·网络·人工智能·windows·ai·ai编程
王志来1379447300815 分钟前
从分散到集成:工控服务器机箱采购如何实现“一站式”破局
运维·服务器·人工智能·python
万岳科技系统开发16 分钟前
AI数字人直播系统搭建从需求分析到正式上线全流程解析
人工智能·需求分析
小O的算法实验室21 分钟前
IEEE TCDS,基于改进双神经网络三维未知环境多机器人协同区域覆盖搜索
人工智能·神经网络·机器人
无凭26 分钟前
DeepSeek Harness 为什么需要 Cordis:从 Everything is Plugin 开始看
人工智能·架构
炮哥聊AI26 分钟前
会调工具的 Agent 只值一半:真正的业务智能体,得会"记仇"
人工智能·agent
字节跳动数据库29 分钟前
火山 PostgreSQL Serverless × 飞书妙搭:把 AI 装进数据库,一句话唤醒数据智能
数据库·人工智能·后端
智购科技自动贩卖机30 分钟前
自动售货机硬件主控方案选型实战:单片机、树莓派、ESP32怎么选?
人工智能·单片机·嵌入式硬件·物联网·网络协议·yolo·架构