- 博客(48)
- 收藏
- 关注
原创 Trino / Amoro 访问 PDC OSS 问题排查与解决复盘
文章摘要 本文记录了Trino/Amoro访问PDC OSS对象存储的完整问题排查过程。主要问题包括:权限拒绝、S3协议不兼容、Trino版本限制和HTTPS证书信任等。排查发现:1) AK/SK正确不代表存储完全兼容;2) Trino 438不支持s3.signer-type配置;3) PDC OSS的私有证书需要同时导入Trino和Amoro的JVM信任库;4) Amoro 0.6.1存在建表"假失败"现象。解决方案包括升级Trino版本、调整S3签名配置、修复证书信任链等。排查过程强调了明确调用链、分
2026-07-20 16:32:44
197
原创 mysql数据库误删恢复
本次事故为 MySQL 数据库lakehouse后续通过 MySQL binlog 进行时间点恢复。lakehouse55319955532116恢复原则:回放 binlog 时必须停在之前,即之前。
2026-06-03 09:02:54
297
原创 trino rest配置amoro之后建表的location问题
location经检查 Apache Amoro 官方源码,高版本v0.9.0-rc3以及当前master仍未修复这两个问题。
2026-06-01 10:29:06
376
原创 springboot、spring、springmvc有哪些注解
GetMapping、@PostMapping、@PutMapping、@DeleteMapping:这些是@RequestMapping的特化版本,分别处理GET、POST、PUT、DELETE请求,使代码更加简洁和具备语义性。@Bean:定义一个Bean的方法,该方法的返回值将被注册为Spring容器中的Bean。@RequestMapping:通用的映射注解,可以处理任何类型的HTTP请求。@Component:一个通用的注解,任何Spring组件都可以使用,表示一个Spring管理的Bean。
2024-12-27 10:36:08
809
原创 接口线上调用时间长排查
在服务上查看jvm状态发现在调用时不停的进行young gc导致时间花费太长。打日志排查后发现问题出在t3,是循环里的代码花费的时间太长。排查这段代码的大对象是在循环里面大对象不停的被创建。优化之后时间明显缩短,将大对象单独只操作一次即可。线上发现这个接口调用时间非常长 花费2min。
2024-08-01 14:42:38
303
原创 springcloud-远程调用超时问题
2、日志打印出来接口超时,已经配置了feign的超时时间和ribbon的超时时间。还需要添加 hystrix 配置。
2024-07-19 09:12:49
603
原创 jvm-接口调用排查
并且线上其他接口正常,只有这个接口异常。这是不正常的,并且老年代长期占比90 即使gc之后也占比90左右,没有清理太多空间,调用完成之后开始下降。1、打日志代码不应该在循环里面打印大对象,非常占用内存,导致老年代的对象无法及时回收,出现内存泄露。线上碰到个问题,某个接口调用时间特别长,线上调用接口直接报gateway time out。然后比较本地和线上的环境和配置的差异,发现线上和本地日志级别不一样,并且线上不断打日志。S1 — Heap上的 Survivor space 1 区已使用空间的百分比。
2024-04-17 13:46:57
1421
1
原创 kaggle-Prediction of Obesity Risk
使用 LGBMClassifier。使用 XGBClassifier。使用stacking。
2024-03-26 15:53:46
519
原创 线程池的核心参数与拒绝策略
比如线程池的 corePoolSize 为 5,maximumPoolSize 为 10,任务队列容量为 100,随着任务被提交,我们的线程数量会从 0 慢慢增长到 5,然后就不再增长了,新的任务会被放入队列中,直到队列被塞满,然后在 corePoolSize 的基础上继续创建新线程来执行队列中的任务,线程会逐渐增加到 maximumPoolSize, 然后线程数不再增加,如果此时仍有任务被不断提交,线程池就会拒绝任务。链接:https://www.jianshu.com/p/979005fc1acc。
2024-03-06 17:35:43
1089
原创 Synchronized的锁升级机制详解(JDK8)
在Java的并发编程当中,synchronzied无疑是最常用的关键字,用于保护代码块和方法在多现场场景下的,并发安全问题。在Java中,synchronized锁是基于对象实现的,通常的使用方式包括修饰同步方法和修饰同步代码块。
2024-03-04 10:00:06
698
原创 使用redis实现分布式锁
NX :表示key不存在的时候,才能set成功,也即保证只有第一个客户端请求才能获得锁,而其他客户端请求只能等其释放锁,才能获取。PX milliseconds: 设定key的过期时间,单位为毫秒。EX seconds :设定key的过期时间,时间单位是秒。XX: 仅当key存在时设置值。1、利用过期时间防止死锁。
2024-01-17 15:16:14
437
原创 springboot集成knife4j配置问题
knife4j.setting.enableFilterMultipartApis false 针对RequestMapping的接口请求类型,在不指定参数类型的情况下,如果不过滤,默认会显示7个类型的接口地址参数,如果开启此配置,默认展示一个Post类型的接口地址。满足条件的Bean就会被注册到IOC容器中,不满足条件的Bean就不会被注册到IOC容器中。knife4j.setting.enableVersion false 是否开启界面中对某接口的版本控制,如果开启,后端变化后Ui界面会存在小蓝点。
2023-12-18 13:53:10
1922
原创 文件流转换问题
上面这种写法在某些浏览器发送的请求并不适配报404错误,通过日志看到已经获取到文件流在最后一步转换时出错。将inputStream 转换成outputStream 返回给前端。使用 BufferedOutputStream 包裹 返回即可解决。
2023-12-14 13:57:12
441
原创 websocket实现和配置
后端调用代码 应用场景是用户在任意前端点击就会触发,且在多个前端都可以获取响应,此时多个前端监听同一个websocket服务。1、websocket 统一实现代码。
2023-11-30 09:33:51
846
原创 解决excel导出报错问题
原因: nginx升级之后解析header出现code字符转移和gateway不适配。gateway添加 - transfer-encoding 解决。nginx旧版本1.18 nginx新版本 1.21。由于nginx升级出现的版本不适配gateway问题。查nginx日志发现报错 code 重复。excel导出报错502 bad。gateway版本2.1.5。以上是gateway配置。
2023-11-04 15:39:40
554
原创 解决内存报错问题--docker问题
经过排查,部署的服务本身没有问题(可以在另外一台机器上发布),服务器内存足够大。猜测是docker容器问题,添加docker内存配置即可。总之一堆错误,看出来是内存问题。
2023-10-31 15:33:04
3363
1
原创 maven问题 Malformed \uxxxx encoding.
直接在 自己的maven仓库文件夹(我的是 D:\maven\local_repository )搜索 resolver-status.properties。使用maven打包时出现 Malformed \uxxxx encoding.然后全部删除 还不行就在 .m2/repository 搜索也全部删除。
2023-08-17 11:27:45
242
1
原创 linux在线安装docker和docker-compose 脚本
【代码】linux在线安装docker和docker-compose 脚本。
2023-08-15 14:21:19
137
1
原创 多租户实现(3)feign调用拦截器和outh2
说明一下token的问题,如果没有开启新的线程那么请求头中的token是会进行传递的,如果是开启新的线程调用其他微服务,请求头会丢失,下面代码将一并解决这两个问题。另外想说token可以设置时效,如果的一般的多线程使用微服务接口调用,可以在第一次获取token之后缓存起来,在调用的时候先进行拦截之后再设置。替代使用资源拥有者的凭据,而是使用一个权限令牌token,它具有具体的范围限制,生命周期,以及其他的权限属性。3、第三方应用获得资源的广泛的权限,是的资源拥有者不能限制访问时间和权限。
2023-08-07 09:01:45
457
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅