当update select from的时候。当子查询返回的数据较多 外层又是张大表的时候 就会产生O(n)的情况。 比如 update table set col = 1 where aid in (select id from a1); 1,UPDATE,test_question_option,,index,,PRIMARY,4,,1398083,100,Using where 2,DEPENDENT SUBQUERY,test_question,,unique_subquery,”PRIMARY,set_id”,PRIMARY,4,func,1,5,...
2022-08-09 15:54 1579 0
druid 最被人知道的应该是做为数据库连接池。 但是他也有一个SQL解析器的功能 druid的问题 SQLUtils.format(sqlString, SqlStrategyBase.DB_TYPE); 在调用这个format方法的时候如果格式化失败 抛出异常会被他自己吃掉。导致出现异常catch不到。然后导致一系列的问题。方法上面没有任何Exception的说明。 看他的源码的时候 发现他直接c...
2022-06-22 11:34 1762 0
本地开发的代码 使用到了 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> spring的邮件starter。本地使用oracle jdk8.服务器使用openjdk8。在我的潜意识里面是认为这俩基本没...
2022-05-12 17:29 2229 0
@transaction失效 原先是没有这个问题的 。后来因为方法太长了。抽了一个额外的方法出来 导致事务失效。 方法里面插入两个表。按照原先的逻辑第二张表失败第一张表也应该回滚掉。实际情况是没有回滚。 复习了一下 transaction失效的几种情况 注解用在非public方法上 (我这次就是这个问题 因为他实现使用AOP) @Transactional 注解属性 propagat...
2022-05-05 10:04 1737 0
默认的nacos不支持Oracle。然后改造了一下 支持了oracle.没有提供这个image。 这边做image的时候出现了一些问题。 启动脚本参考的docker hub的官方的。 if [[ "${NACOS_DATASOURCE_USERNAME}" ]]; then JAVA_OPT="${JAVA_OPT} -Dnacos.datasource.relational.dsList[0].username=${NACOS_DATASOURCE_USERNAME}" fi if [[ "${NACOS_...
2022-02-25 15:50 1752 0
老版的k8s有一个默认的过期时间。1年 。如果不改代码的情况下 。 改代码的话 可以无限 使用kubeadmin 安装的k8s 更换证书: kubeadm alpha certs check-expiration cp -rp /etc/kubernetes /etc/kubernetes.bak 移除过期证书 rm -f /etc/kubernetes/pki/apiserver rm -f /etc/kubernetes/pki/front-proxy-client. rm -rf /etc/kubernetes/pki/etc...
2022-02-21 13:46 2081 0
(combined from similar events): Failed to create pod sandbox: rpc error: code = Unknown desc = failed to start sandbox container for pod “config-center-75cccff6b6-2x2t6”: Error response from daemon: OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.g
2022-02-21 12:59 3152 0
class加载 类的初始化 代码 public class ljd { public static void main(String[] args) { System.out.println(bb.value); } } class aa{ static { System.out.println("aa"); } public static int value = 123; } class bb extends aa{ static { System.o
2022-02-09 19:08 1476 0
起因 监控所有的东西的时候都可以使用这一段代码。监控mysql啥的都可以使用。在落地Prometheus的时候。最基础的也是最重要的就是操作系统的监控。这个时候会用node_exporter。因为不想用static这种东西修改起来很麻烦。要reload啥的。然后就准备用sd。以node_Expoerter为例 sd consul 在使用sd的时候 发现node_Export不能自动注册到consul。现在...
2022-01-17 09:02 2717 0
在Java中通过Arrarys.asList产生的是Arrary的list 而不是util.list 导致add的时候抛出异常。 prepstatement 对于preparestatement来说 ? setstring会对于传的参数 自动加入两个单引号。导致部分语法解析出错。改造方式:直接使用stringbuilder拼接。 奇怪的问题 k8s 对于应用管理的时候如果nodeport开启了。然后在用docker启动其他的容器暴露相同...
2021-11-23 17:53 1649 0
truncate empty table很慢。 bug: In MySQL 5.7 and earlier, on a system with a large buffer pool and innodb_adaptive_hash_index enabled, a TRUNCATE TABLE operation could cause a temporary drop in system performance due to an LRU scan that occurred when removing the table’s adaptive hash index entries (Bu
2021-11-03 14:00 2454 0
DESCRIBE sample describe: In this assignment, you will create a Flight Scheduler application in the Java programming language. The program will be a tool for airlines to use to schedule flights between different locations, producing timetable plans, and an easy way to check routing between cities on
2021-10-25 10:38 1535 0
复制技术的演进 async 用户进行数据的修改和提交。master把dirty data写入binlog 。master binlog dump 把binlog内容推送给slave slave ioThread 接受读取binloginfo.binlog写入relaylog sqlThread 读取relay log。按照提交顺序进行trx 回放 写入文件。 半同步复制 5.5引入 对于async的改进在于客户端在master上写入一个trx的时候,需要等待slav...
2021-08-19 16:50 1800 3
mysqlserver体系结构 connector(连接者):不同语言与mysql的交互 connectpool(连接pool):连接池 管理缓冲用户的连接 sql interface:接受sql执行的接口。并返回执行结果 parse’:sql语句传递到解析器进行验证和解析。 optimizer:基于cbo的优化。 cache&&buffr:表和权限的缓存 plugin storage engine:引擎插件 Files && logs :数据文件 FS:和文...
2021-08-18 01:08 1748 0
不知道叫什么with harvey 在一个一万条数据的table 做测试。先使用代码生成10000条数据。 表结构: mysql> show create table aaaa; +-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------...
2021-08-16 11:13 1776 0
关于goroutine调度 这部分工作不属于osThread的工作内容。属于外部的工作 ==> 就是go-Team做的工作。在runtime里面叫schedule 在runtime2.go里面的schedt 这个struct type schedt struct { // accessed atomically. keep at top to ensure alignment on 32-bit systems. goidgen uint64 lastpoll uint64 // time of last n...
2021-08-10 18:01 1526 0
不要使用共享内存的方式来通信 用通信来共享内存 —-from GoTeam 在操作系统上面做多线程编程的时候 Java通过jvmthread和osThread 一一对应的方式来新开一个osThread。 而Go在这方面是使用一种类似两级线程的东西来完成 线程Or 协程? 模型 GMP 模型。这个应该稍微了解过go底层应该都知道。脱胎于CSP模型。 G 代表goroutine 也就是一段go的代码...
2021-08-05 13:43 1752 0
https://blog.csdn.net/ActionTech/article/details/104904902 STRAIGHT_JOIN 改变表的连接顺序
2021-06-04 10:30 1792 0
由于是测试数据库和部分非重要数据库。这边图简单就是直接用了docker。对于my.cnf的也没做配置和指定。 应用也是跑在k8s上面的。容器内部有nacos做注册中心和配置中心。 这几周就发生了一些情况 nacos莫名会断开连接。 启动命令: docker run -d --name mysql57-3308 / -p 3308:3306 / -e MYSQL_ROOT_PASSWORD=xxxxx / -v /data/mysql57...
2021-05-31 10:19 2623 0
Defer go中的defer 用于注册延迟调用函数的机制。让函数在执行完成之后执行 采用FILO,即先入后出。 官方对于defer的解释 翻译版:对于defer语句执行的时候,会把函数压栈,函数参数会被copy下来,当外层代码退出。defer函数按照定义的顺序逆序执行。如果defer的函数是个nil 则会抛出paninc。 基础的defer使用就不说了 defer的坑 最大的就是defer...
2021-05-20 09:58 1666 0