Thread: Information regarding Table-Locks

Information regarding Table-Locks

From
sri harsha
Date:
Hi,

   I have a few doubts regarding table locks. Assume I am executing the following query

Query 1 -- INSERT INTO FOREIGN_TABLE SELECT * FROM POSTGRES_TABLE

Query 2 -- INSERT INTO FOREIGN_TABLE SELECT * FROM FOREIGN_TABLE

If i get a table lock for the foreign table , will the second table from which i am getting the data will also come under this lock ?? Or is it a separate lock ?? Does postgres handle that lock ??

What kind of lock will the second table will be in ?? Can i rename the second table while executing the INSERT QUERY ??

Thanks,
Harsha

Re: Information regarding Table-Locks

From
John R Pierce
Date:
On 1/15/2015 9:14 PM, sri harsha wrote:
> What kind of lock will the second table will be in ?

I suspect that depends on what FOREIGN_TABLE is connected to.



--
john r pierce                                      37N 122W
somewhere on the middle of the left coast



Re: Information regarding Table-Locks

From
sri harsha
Date:
Hi John.

   What if my query was INSERT INTO Postgres_Table_A SELECT * FROM Postgres_Table_B ?? What are the locks given for the two tables ??

--Harsha


On Fri, Jan 16, 2015 at 10:50 AM, John R Pierce <pierce@hogranch.com> wrote:
On 1/15/2015 9:14 PM, sri harsha wrote:
What kind of lock will the second table will be in ?

I suspect that depends on what FOREIGN_TABLE is connected to.



--
john r pierce                                      37N 122W
somewhere on the middle of the left coast



--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Re: Information regarding Table-Locks

From
Guillaume Lelarge
Date:

Le 16 janv. 2015 06:27, "sri harsha" <sriharsha9992@gmail.com> a écrit :
>
> Hi John.
>
>    What if my query was INSERT INTO Postgres_Table_A SELECT * FROM Postgres_Table_B ?? What are the locks given for the two tables ??
>

If they are both regular tables, they can insert at the same time. But you can't rename a take while it's being read or written.

> --Harsha
>
>
> On Fri, Jan 16, 2015 at 10:50 AM, John R Pierce <pierce@hogranch.com> wrote:
>>
>> On 1/15/2015 9:14 PM, sri harsha wrote:
>>>
>>> What kind of lock will the second table will be in ?
>>
>>
>> I suspect that depends on what FOREIGN_TABLE is connected to.
>>
>>
>>
>> --
>> john r pierce                                      37N 122W
>> somewhere on the middle of the left coast
>>
>>
>>
>> --
>> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
>> To make changes to your subscription:
>> http://www.postgresql.org/mailpref/pgsql-general
>
>