关闭
侧边栏

entity manager close

Posted by dbtan on 三月 24th, 2017

前言

entity manager未关闭造成的影响

spring jpa version:1.10.1
底层hibernate: 5.1.0

场景

某些情况需要自行写sql,然后就用到了EntityManager, 用完之后没有显示的close(==|||)

上线后大量请求超时,偶尔有那么几个请求会快

问题定位

首先确定不是数据库正在的查询慢,目前量还很小,然后找到sql去数据库查询系统确认,查询速度接近0ms

然后怀疑是网络延迟,然后找到接收到前端传递过来的参数,想让前端查查log他们发送的时间点,没人搭理...无果

找运维同学要了份error log,一看,果然不是网络问题,大量报获取不到数据库链接,等待获取连接超时,当时心一惊

想着
... ...
<阅读全文>

如何恢复 SET UNUSED 的 COLUMN

Posted by dbtan on 十二月 19th, 2016

通过上篇文章,我们已经基本了解 标记列为未使用 (Marking Columns Unused) 了。

我们知道,在 SET UNUSED 后 其实数据并未真的被删除,若这时又想恢复该列,有办法吗?

接下来,我们来实验一下。

如何修复被标记为 UNUSED 的字段

0. 实验环境 Oracle 11.2.0.4

SQL
16:49:06 sys
... ...
<阅读全文>

标记列为未使用 (Marking Columns Unused)

Posted by dbtan on 十二月 16th, 2016

Marking Columns Unused 基本操作步骤

1. 标记列为未使用

SQL
ALTER TABLE <table_name> SET UNUSED (<column_name>);

2. 然后在数据库空闲时,再删除列

SQL
... ...
<阅读全文>

How To Automate Cleanup Of Dead Connections And INACTIVE Sessions [ID 206007.1]

Posted by dbtan on 九月 15th, 2010

How To Automate Cleanup Of Dead Connections And INACTIVE Sessions [ID 206007.1]


Modified 25-JUN-2009     Type HOWTO     Status PUBLISHED

PURPOSE
-------This note explains the difference between a dead connection and an
INACTIVE session in v$session.  It also discusses the mechanisms
provided to automate the cleanup of each.SCOPE & APPLICATION
-------------------This note is intended for any DBA who wants to automate the cleanup of
dead conn
... ...
<阅读全文>

Oracle 10g/11g Latch机制的变化

Posted by dbtan on 五月 13th, 2010

Oracle 10g/11g Latch机制的变化:
前面曾经提到,Oracle的Latch机制采用spin来进行持有CPU的不断尝试,虽然通常Latch的获取会非常快(一般在微秒级),但是很多时候Latch竞争还是会引发极为严重的CPU争用。所以从Oracle 10g开始,Oracle尝试引入一种新的机制来代替传统的Latch机制,这就是Mutex机制,也就是互斥机制。和Latch相比,一个Mutex Get大约仅需要30~35个指令,而Latch Get则需要大约150~200个指令,同时在大小上,每个Mutex仅占大约16Bytes空间,而Latch在10gR2中要占用大约112Bytes空间。

在Oracle 10.2..0.1中一个新的参数_kks_use_mutex_pin被引入,不过缺省值为False:

sys@TQGZS> sel
... ...
<阅读全文>


Copyright © 2009 - 2018 https://www.dbtan.com. All rights reserved.    京ICP备13006977号-1