Twitter Youtube Github
Burak Kutbay'ın Kişisel Blog'u |

Type and hit Enter to search

  • Eğitim
  • Quarkus
  • Spring Cloud
  • Spring Boot
  • Spring JDBC Template
  • Spring MVC
  • Spring Core
  • Spring Örnekleri
  • Hibernate
  • Java Server Pages
  • Java Server Faces
  • PrimeFaces
  • Servlet
  • JDBC
  • JSTL
  • Java 8
  • / Diğer
    • Ünlü Bilişimciler
    • C Sharp
    • Kütüphane
    • Makale
PostgreSQL

PostgreSQL SKIP LOCKED Özelliği Nedir?

Paylaş

PostgreSql 9.5 sürümü ile gelen bu Skip Locked özelliğinin ne olduğunu açıklamaya çalışacağım.

Veritabanımızdaki kayıtlarımızın üzerinde yapılacak işlem süresi boyunca “kitlemek” ihtiyacı olduğunda kullanılacak olan bir özelliktir.

Yazılımımız bir veri üzerinde işlem yapması gerekiyor ve bu yazılımımız birden fazla thread olduğunu düşünelim. Bu thread’lerin aynı veriler üzerinde birden fazla işlem yapmaması için veritabanında işlem yapılmaması için SKIP LOCKED özelliğinden faydalanarak select sorgusunda o kaydın gözükmesini engellemiş olmaktayız.

Örnek olarak “student” tablosu üzerinde 1 id’li kaydı kitleme işlemine sokalım.

//session 1 begin; select * from student where id=1 for update;
Code language: JavaScript (javascript)

Ayrı bir session üzerinden veritabanına tekrar bağlanalım ve aşağıdaki komutu yazalım. “student” tablosunu sorgulayalım. Bu sorgu Skip Locked olanları göstermeyecektir.

//session 2 SELECT * FROM student FOR UPDATE SKIP LOCKED;
Code language: JavaScript (javascript)

Biz session 1’den “commit” edene kadar kitlediğimiz veriler diğer sessionlardan görüntülenemeyecektir ve işlem sonuna kadar verileri kararlı şekilde tutacağız. 1 id’li veri select sorgusunda gözükmeyecektir.

commit yaptıktan sonra ise tüm kitleme özellikleri biter ve aynı kayda erişebiliriz.

commit;

İşlem yapmaya çalıştığımız verileri işlem süresi boyunca kitleyerek aynı veri üzerinde tekrar işlem yapılmasını engelleme yöntemini öğrenmiş olduk.

Tags:

postgresqlskip lockskip locked

Paylaş

Diğer Yazılar

Quarkus Dersleri Uygulama Örnekleri
Previous

Quarkus Nesnelerin Yaşam Döngüsü

blank
Next

Lombok @Builder Anotasyonu Nedir? Nasıl Kullanılır?

Next
blank
12 Ağustos 2021

Lombok @Builder Anotasyonu Nedir? Nasıl Kullanılır?

Previews
11 Mayıs 2021

Quarkus Nesnelerin Yaşam Döngüsü

Quarkus Dersleri Uygulama Örnekleri

No Comment! Be the first one.

Bir cevap yazın Cevabı iptal et

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İlgini Çekebilir

blank

PostgreSQL Veritabanı Tablosuna EXCEL / CSV Dosyadan Veri Eklemek

Postgre Sql Eğitimi Devrim Gündüz

PostgreSQL’de Wal, Replikasyon ve Yedekleme Semineri – (Devrim Gündüz) Notlarım

Burak Kutbay'ın Kişisel Blog'u |

© 2008 - ∞, Her hakkı saklıdır.

Link

  • Hakkımda
  • İletişim
  • Arşiv

Kategori

Cloud
Amazon Web Services
Vue.js
Gradle
Node.js
Android
Struts
Redis
Röportaj
Spring Data
Spring Cloud Stream
XCode
Debezium
Mikroservis Mimarisi
Video
Spring Native
iPhone Uygulama Geliştirme
Objective C
JPA
Spring Security
PostgreSQL
Apache Kafka
Git
Servlet
Yaptığım Projeler
Maven
Design Patterns
DevOps
Linux
RabbitMQ
PrimeFaces
JDBC
Spring Jdbc Template
Spring
Spring MVC
Manset
Google
Spring Cloud
OCA Java SE 8
Spring Core
Quarkus
Microsoft
Veritabanı
Tanıyalım
Java SE
Hibernate
Teknoloji
Okuduğum Kitaplar
Java Server Faces
Yazılım Mühendisliği
C Sharp
Spring Boot
Java
Günlüğüm
Java Server Page
Makale

Takip Et

Twitter Youtube Github
  • Eğitim
  • Quarkus
  • Spring Cloud
  • Spring Boot
  • Spring JDBC Template
  • Spring MVC
  • Spring Core
  • Spring Örnekleri
  • Hibernate
  • Java Server Pages
  • Java Server Faces
  • PrimeFaces
  • Servlet
  • JDBC
  • JSTL
  • Java 8
  • / Diğer
    • Ünlü Bilişimciler
    • C Sharp
    • Kütüphane
    • Makale