
挖坑踩坑
文章平均质量分 73
zzzgd816
这个作者很懒,什么都没留下…
展开
-
【踩坑】hive脚本笛卡尔积严重降低查询效率问题
前一阵子查看我们公司的大数据平台的离线脚本运行情况, 结果发现有一个任务居然跑了, 要知道这还只是几千万量级的表, 且这个任务是每天需要执行的于是我把hive脚本捞出来看了下, 发现无非多join了几个复杂的子查询, 应该不至于这么久, 包括我又检查了是不是没有加上每日分区的筛选条件比如t1,t2,t3表都是1000, 彼此关联的是10条, 则按常理应该是t1和t2筛选和关联后得到临时表10条, 然后这10条再和t3进行10*1000筛选和关联.原创 2023-10-10 10:47:46 · 1078 阅读 · 0 评论 -
【踩坑】AES256解密失败,jasypt解密失败 最简单解决办法(本地环境)
3.AES加解密时,会使用到Java.security.*包,即jdk security,其中使用的jar包%JAVA_HOME%/jre/lib/security/local_policy.jar和%JAVA_HOME%/jre/lib/security/US_export_policy.jar有对技术出口的限制(因为美国的出口限制,Sun通过权限文件local_policy.jar、US_export_policy.jar做了相关限制),加密只有128bit,而没有限制的则有256bit。原创 2023-02-24 10:31:38 · 1664 阅读 · 0 评论 -
【踩坑】记录几个踩坑经过,升级框架,for update和批量导入
最后看源码发现原因是28版本解析address的时候,多解析一个斜杆,在com.dtflys.forest.http.ForestURL#toURLString 方法里多拼接了一个斜杆。forest是一个轻量级的http请求框架,有一天闲来无事看到idea的升级依赖功能就随便点了几个,将其升级到1.5.28版本。最后分析可能是主从同步延迟的原因,批量写主表, 从表即刻查询到一部分还未同步到的数据当作需要处理的返回, 导致重复插入。最后出现了重复的序列编码,甚至数据库出现重复的序列记录。原创 2023-02-02 19:36:57 · 830 阅读 · 0 评论 -
【踩坑】double和BigDecimal的精度问题
其实double有精度问题,这个是大家都知道的. 解决精度问题用BigDecimal也是很常见的手段, 但是这里不知道为什么controller的接口使用了double来接收.double有精度问题使用BigDecimal最好用string来转化最坑是在debug的时候, 由于代码是第一个balanceFee是字符串转化计算而来的,是准确的, 第二个amt是double, 在debug模式下浮窗显示的值也是精准的, 然而最重要的却没有浮窗显示出值.原创 2022-12-01 22:07:34 · 1112 阅读 · 0 评论 -
【踩坑】parallel并发流导致数据异常
慎用parallel和parallelStream如果非要用, 确保里面不会对同一个元素修改如果非要修改, 确保元素是有同步修饰的, 或者Atomic类的对于数据量不大的, parallel可能更耗时间, 因为线程的切换,以及parallel是先切分list再合并, 切分合并也需要时间parallel后会导致list无序。原创 2022-11-25 19:44:22 · 1348 阅读 · 0 评论 -
【踩坑】慎用线程池,导致生产环境假死
线程池最好统一管理起来,不要随便new,或者new了用完记得关闭,或者使用jdk提供的ForkJoinPool等框架自带的,或者写单例线程池的线程数,队列大小需要考虑,不同的场景(IO密集和CPU密集)应该用不同的线程池。队列太长,可能难以触发增加线程数到maxThread,导致在等待时间过长,超时。队列太小,则需要考虑maxThead大小,避免线程不够用。原创 2022-11-22 18:52:24 · 1432 阅读 · 0 评论 -
【踩坑】mysql工作中真实踩坑系列(持续更新),一个or让sql变慢100倍,带子查询的update很慢
mysql真实踩坑, 主要是针对慢sql. 包括:1.一个or导致sql性能下降10倍2.有子查询的update很慢但是select很快原创 2022-11-22 16:39:38 · 2312 阅读 · 0 评论 -
关于idea上LeetCode插件, java.lang.NoSuchMethodError: ‘ListNode ListNode.deserialize(java.lang.String)‘ 问题
如题, 刷到链表的题的时候, 遇到这个问题.它自动生成的代码模板里有这个注释: //leetcode submit region begin(Prohibit modification and deletion)/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } *原创 2022-05-18 15:46:03 · 3129 阅读 · 5 评论 -
【踩坑】mybatisplus3.x 和 pagehelper 结合,分页失效的问题
pagehelper和mybatis plus 的冲突原创 2022-04-28 17:01:34 · 5169 阅读 · 2 评论 -
【踩坑】解决maven的编译报错Cannot connect to the Maven process. Try again later
annot connect to the Maven process. Try again later. If the problem persists, check the Maven Importing JDK settings and restart IntelliJ IDEA原创 2022-04-28 10:47:29 · 20423 阅读 · 6 评论 -
Ftpclient调用retrieveFileStream返回null, docker中下载失败问题
如题, 最近在弄容器化部署, 将项目都上线到k8s上, 就在验证功能是否已正常的时候, 发现ftp下载都失败了.和运维一起定位问题花了一天起初以为是因为容器所在服务器连不上ftp server, 后面发现并不是这样, 后面自然又看了下是否由于代码原因, 但是在普通机器上跑的服务下载正常, 这就基本能断定是因为docker容器导致的问题.下面是定位问题的过程, 写的比较啰嗦, 关注解决方法的看最后定位问题过程确定是偶发还是必然首先反复在docker容器和普通机器上测试, 确定这不是偶发性.原创 2021-12-14 21:02:37 · 3626 阅读 · 0 评论 -
activiti-spring-boot-starter(7.1.0.M4)版本中, 启动流程绑定的全局变量, 在taskService.complete无法覆盖
如题贴代码:比如我们启动流程的时候绑定了一个变量 securityUtil.logInAs("zhangsan"); ProcessInstance processInstance = processRuntime.start(ProcessPayloadBuilder .start() .withProcessDefinitionKey(PROCESS_KEY_CUSTOMER_COMPLAINT) .withNam原创 2021-08-17 11:39:51 · 2294 阅读 · 1 评论 -
【踩坑】win10迁移系统到移动硬盘, 换系统盘,无法启动等问题
【踩坑】win10迁移系统到移动硬盘, 换系统盘,无法启动等问题1. 仅迁移2. 迁移并移除原系统盘踩坑心得1. 准备工作要做好2. 不要轻易删除引导分区efi, 除非你必须要更换原来的硬盘3. 新硬盘的格式要先修改, 再迁移4. 要设置好esp分区和重新设置引导1. 仅迁移这个没啥好说的, 傲梅等分区助手, 傻瓜式操作, 迁移过去了, 重启, 正常2. 迁移并移除原系统盘我就是这个情况, 迁移系统, 重启, OK.然后我把原来的c盘给格式化了, 准确的说是整个固态硬盘给擦除了, 重启就不行了,原创 2021-07-17 06:29:05 · 38213 阅读 · 5 评论 -
docker for windows 安装踩坑合集
docker for windows 安装踩坑合集首先说下我一开始的安装方法先是独自安装了docker, 程序和功能中打开了hyper-v然后测试下, docker和docker-compose的version命令都没有问题, 它会自动给你注册到path全局环境变量, 但是没有docker-machine, 又单独去github找了安装包安装了然后又发现docker ps命令不行, 报error during connect: Get http://%2F%2F.%2Fpipe%2Fd原创 2021-07-12 16:47:15 · 1138 阅读 · 0 评论 -
xml解析CDATA中遇到&等特殊字符问题
比如一个xml的如下:<formExport> <values> <column name="名字"> <value><![CDATA[abcd\&$<>阿道夫]]></value> </column> <column name="名字2"> <value><![CDATA[<刘&智&]]>原创 2021-05-28 10:00:28 · 2369 阅读 · 0 评论 -
【踩坑】Linux java中ftp下载文件,解压文件损坏,以及图片下载打开只显示下载路径的问题
【踩坑】Linux java中ftp下载文件,解压文件损坏,以及图片下载打开只显示下载路径的问题一. 问题重现二. 问题解决思路1. 确认是不是上传就导致数据出错了2. 是不是平台问题三. 解决四. 其他问题4.1 下载下来文件大小异常, 只有几十个字节一. 问题重现压缩文件下载下来后, 文件大小看起来是没问题, 解压缩的时候提示压缩文件数据错误。图片下载下来以后,文件大小正常,打开只有一行下载后的路径二. 问题解决思路1. 确认是不是上传就导致数据出错了从服务器用ftp下载文件原创 2021-04-29 11:22:33 · 2565 阅读 · 1 评论 -
【踩坑】cat3.x服务端部署, springboot客户端接入
【踩坑】cat3.x服务端部署, springboot客户端接入前言服务器部署问题1. 数据库连不上2. 不要创建server.xml客户端注册问题1. client.xml信息错误2. 应用注册名建议不要有特殊符号3. 缓存/本地文件的干扰前言这两天在看有什么好一点, 全面, 轻量的监控工具. 其中就看到了Cat想要试一试, 结果部署半天出了一堆问题. 这里记录下, 希望能帮到小伙伴们.总结了下. 服务器部署关键的几步:去git上拉代码将sql脚本执行,创建数据库和表关键, 查看pom依赖,原创 2021-02-03 21:11:29 · 2696 阅读 · 1 评论 -
idea配置docker远程tcp超时,或者浏览器能打开的链接,idea中运行的程序,java的http请求超时,connect timeout的问题解决
浏览器能打开的网址,在idea中的java程序确抛出timeout超时的异常, 或者docker在idea配置中tcp链接2375端口一直超时无法连接的问题-Djava.net.preferIPv4Stack=true原创 2021-01-14 15:41:37 · 5882 阅读 · 7 评论 -
【踩坑】@Configuration和@Component的区别,内存占用完全不同
【踩坑】@Configuration和@Component的区别,内存占用完全不同一 场景描述1.1 问题代码1.2 源头二 原因三 @Configuration和@Component的区别3.1 运行结果3.2 分析一 场景描述闲着无聊dump了一份线上的运行数据,导入到一个分析dump的在线网站:https://heaphero.io/然后发现一个类居然占用了10M的大小,我这并不是一个很大的项目.整整占了全部使用内存的30%,赶紧看看是为什么。1.1 问题代码public class原创 2021-01-11 21:35:22 · 1554 阅读 · 0 评论 -
【踩坑】关于pyinstaller打包exe后, 报no module named xxx
问题如题, 用pyinstaller打包, 打包正常, 启动闪退. 用命令行终端shell执行, 报错no module named xxx. 我这里是openpyxl按网上说的加了pyinstaller -F excel_handle.py --hidden-import=openpyxl无效又看了说是openpyxl版本问题, 降级到2.3.4, 无效解决实际上是命令不对. 我这里是python3版本pyinstaller -F excel_handle.py --hidden-imp原创 2021-01-08 11:18:51 · 8304 阅读 · 6 评论 -
SpringCloud OAuth2资源服务器解决Full authentication,自定义返回异常信息,以及资源服务器忽略验证url,实现自定义登录获取认证服务器的token
SpringCloud OAuth2资源服务器解决Full authentication,自定义返回异常信息,以及资源服务器忽略验证url,实现自定义登录获取认证服务器的tokenFull authentication 问题自定义登录ControllerwebSecurity配置类:资源忽略验证url自定义返回异常信息实现AuthenticationEntryPoint实现AccessDeniedHandler继承ResourceServerConfigurerAdapterFull authentica原创 2020-07-13 18:03:22 · 9023 阅读 · 1 评论 -
【踩坑】Shiro和Mybatis整合,事务失效 will not be managed by Spring
[速记] 踩坑今天一下午都在找这个bug,发现平时用的好好的mybatis,居然突然就事务失效了、当然我想大家第一反应就是@Transaction注解的一些注意要点,这些我也简单在这贴一下吧:spring管理的事务,其实就是靠aop来对数据库操作方法的前后进行处理。我理解的spring做的事情如下:spring织布机前后织入了逻辑(生成类的代理对象)public void spring...原创 2020-01-06 21:27:59 · 4795 阅读 · 1 评论 -
Mysql中正则匹配的坑,和java中正则的不同之处
前不久要写一个处理存量数据的脚本,当时为了筛选出身份证号,我的sql的where条件加上了正则匹配:select * from t_idcard where f_idcard regexp '^[0-9]{17}[0-9Xx]|[0-9]{15}$'看上去好像并没有问题。 就是匹配18位带Xx或者15位的身份证的正则。直到我看见了这条记录被查询出来:312358557808402984F...原创 2019-11-21 16:03:33 · 1159 阅读 · 0 评论 -
关于使用线程池,main方法跑完后程序仍在运行
前一段时间,使用线程池写了个脚本跑存量数据,测试了下方法,抛出异常后发现程序并没有终止,等了很久也还是一样,最后手动关闭了程序。后面发现是因为线程池。原因线程池内部有一个类似于死循环的方法,这个循环是非守护线程(用户线程),而jvm对于非守护线程,如果不终止的话,程序是不会结束的,main方法就是非守护线程。代码看代码:我们使用线程池,最终都是将任务调用ThreadPoolExecuto...原创 2019-11-11 16:34:56 · 5343 阅读 · 0 评论 -
HttpClient使用时Timeout waiting for connection from pool,maxConnTotal和maxConnPerRoute
一、为什么会报Timeout waiting for connection from pool首先我们需要知道,HttpClient是不建议每次使用都创建的,因为它本身就带一个连接池。如果我们使用频繁的话,频繁创建HttpClient对象也不是明智的。我在使用HttpClient的时候,在一个调用链中,只是依次使用了HttpClient调用了几次http接口,却发现在第5个的时候,报错了or...原创 2019-08-16 11:54:33 · 20886 阅读 · 4 评论