Insert Command Creating Table Locking Problem


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Insert Command Creating Table Locking Problem
# 1  
Old 05-13-2013
Insert Command Creating Table Locking Problem

Hi,

i have a java based tool which does insert operation in a TABLE, and in parallel the same table is used by my C++ code which does select Query.

the Table will be always busy, but sometimes the table is getting locked when i try to make an insert, am bit confused whether the lock is because of SELECT query from my C++ code or by the INSERT QUERY from the java Tool.

Do i need to modify the Query if so how..? and from the google i learnt that select puts an internal LOCK.

currently am locking the table before insert below is my query

lock table table_name in exclusive mode nowait

and giving a commit after performing the DML operation so that lock will be removed automatically.

can anyone please solve my query.?

thanks,
senthil
# 2  
Old 05-13-2013
First dont post duplicate posts
Table Locking in Insert Command.

As far as I know SELECT wont put any type of locks on table. Even when you apply exlusive lock Select work on the table.

Just check your java code whether its not calling one more instance before commit?
# 3  
Old 05-13-2013
hi,

thanks for your reply and sorry for double posting. you mean to say i should not do commit after all the insert operations are done but should do one by one

eg: Lock ,Insert and commit one by one.

not overall commit for all insert..?

is that correct..?

thanks,
senthil
# 4  
Old 05-13-2013
Overall commit is fine however just make sure when you have applied the exclusive lock using java and no other thread of same java code access the table..

Also are you sure no other process other than your java and C++ code access this table?
# 5  
Old 05-13-2013
Let me explain the Process


C++ code do a select every 30 secs during busy hours and evry 5 minute during non busy hours.

and my tool will be inserting anytime accessing the same table used by select operation from C++ code.

will exclusive Lock create any problem if the thread is not handled properly..? and since am locking the table for each and every insert , will that be a problem.


thanks,
senthil
# 6  
Old 05-13-2013
Thanks got it!!

Since you are inserting the data and not updating it I dont think you need table level exclusive lock. Insert will have its own row level lock which is sufficient.

Table level locks are usually applied when you want to update some data and make sure user access the updated data only..
# 7  
Old 05-13-2013
thanks,

so can i remove exclusive mode nowait from the lock query ,when am trying to insert the values into the table.

---------- Post updated at 06:48 PM ---------- Previous update was at 06:19 PM ----------

the Tool will be used by three four users in parallel ..? will that have any impact if i remove the lock?
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Insert one table and update another with shellscript

I have a problem with my shell script. I want to insert data from file to table1(empty) and then, compare table1 with table2 and update some fields. The first part is correct, but the second part does not work. The only way it works is if after the first part I truncate table1 and run the script... (1 Reply)
Discussion started by: nika_mill
1 Replies

2. Shell Programming and Scripting

Insert bulk values in DB table using isql

Hello, Objective is to insert bulk values in DB table using isql. Following code tried: isql -SServer_name -Ddb_name -Uuser_name -Ppassword < file.txt cat file.txt for i in `cat data_value_file.txt` do insert into tempdb..temp_table11 values ('$i') go done cat... (3 Replies)
Discussion started by: manishdivs
3 Replies

3. Programming

Table Locking in Insert Command.

Hi, i have a java based tool which does insert operation in a TABLE, and in parallel the same table is used by my C++ code which does select Query. the Table will be always busy, but sometimes the table is getting locked when i try to make an insert, am bit confused whether the lock is... (0 Replies)
Discussion started by: senkerth
0 Replies

4. UNIX for Dummies Questions & Answers

Creating a condensed table from a pre-existing table in putty

Hello, I'm working with putty on Windows 7 professional and I'd like to know if there's a way to gather specific lines from a pre-existing table and make a new table with that information. More specifically, I'd like the program to look at a specific column, say column N, and see if any of the... (5 Replies)
Discussion started by: Deedee393
5 Replies

5. Shell Programming and Scripting

[Solved] Problem insert $1 value into a command

Hi folks I am trying to use a call to a python command within a shell script to help validate a date. If I hard code the date to be checked in the string it works. As follows cmd_result=$(/usr/bin/python -c 'import time; print time.strftime("%d",time.strptime("31/02/2008", "%d/%m/%Y"))'... (2 Replies)
Discussion started by: PatMcDonagh
2 Replies

6. Shell Programming and Scripting

Creating a table

I have a file like below Iter 1: Best Model = 10.0 12.0 13.0 17.0 23.3 78.7 Iter 2: Best Model = 10.0 20.0 30.0 40.0 50.0 60.0 Iter 3: Best Model = 27.3 46.3 84.5 23.0 34.5 35.4 etc I want to use a scipts using csh or awk to select the iteration number and show the numbers in a table... (2 Replies)
Discussion started by: kristinu
2 Replies

7. Shell Programming and Scripting

Insert into Oracle table thru UNIX - linux 2.6.9-89

Hi, I am trying to insert a record into a table (say dips_tbl) which resides in Oracle DB through a ksh script. I want to insert records into few of the table columns-not all. I'll give an e.g. for the date column "CREATE_DATE". For that I first execute SQL1="SELECT SYSDATE FROM DUAL" ... (1 Reply)
Discussion started by: dips_ag
1 Replies

8. Shell Programming and Scripting

select values from db1 table and insert into table of DB2

Hi I am having three oracle databases running in three different machine. their ip address is different. from one of the DB am able to access both the databases.(means am able to select values and insert values in to tables individually.) I need to fetch some data from DB1 table(say DB1 ip is... (2 Replies)
Discussion started by: aemunathan
2 Replies

9. Shell Programming and Scripting

need to insert two columns (or two feilds) at the begining of the table

Hey guys/gals, So here is what i'm starting with...its a Solaris patch diag output. bash-3.0# pca -l Using /var/tmp/patchdiag.xref from Oct/20/08 Host: seiftsx4140 (SunOS 5.10/Generic_127128-11/i386/i86pc) List: missing Patch IR CR RSB Age Synopsis ------ -- - -- --- ---... (3 Replies)
Discussion started by: zeekblack
3 Replies

10. UNIX for Dummies Questions & Answers

locking problem

Hi... after unlock my computer from lock, all telnet windows which i opened previously are closing automaticaly... i hope u understand....plz give solution... (1 Reply)
Discussion started by: venkatramana
1 Replies
Login or Register to Ask a Question