Add to Watchlist

Hooks in PostgreSQL

40 views

Citation of segment
Embed Code
Purchasing a DVD Cite video

Automated Media Analysis

Beta
Recognized Entities
Speech transcript
was just waiting for the right to the end OK 0 everybody
on this talk will present you're quite and feature of course rests on and this feature is its hook system the
1st few words about me my name is human I am 1 of the translator of the this manual becomes that force Westfield manually French since the 7 that for really I'm 1 of the developer of a genome and how far do a lot of of the stuff on as breasts and really related to each other for work I wrote at the evil for which is a special company we do a lot of stuff rests mostly trainings tuple and predicting well enough about me
as grass is really well known for its efficiency heritage many people know that you can add your own user types we can add functions that and user types we can add operators which use those functions and you can do lot of other of other stuff you can have many languages for example to code your function actually there the extensibility of pose risks is so intelligent to the project that's 1 of the most interesting features of line of what is its extensions the object the extension of that helps you to add new features a new user types you functions to your PostgreSQL database server with all this going on on the extensibility it's a rather strange brother we have that's the hook system in itself is really less what's the hook hook the payment of books is to interact with and modify the usual behavior of close to those of their right how to add new features without having to add it to the cost of possible it's not the well known because it's actually quite recent the 1st took appeared in a that it in and that 3 you have 5 books available in it but for all you got more books in 9 . 0 you get 2 more 2 and 9 . 1 5 0 so right now you have around 20 books available to modify the behavior of but actually the biggest issue is that it's at multiple explained in the dissertation we can search through all the documentation you have nothing about the host and how to cut functions that use the books available in you have for kind of books it's where yeah for kind of boats hooks on the planner jokes on the executor yields hooks at specific to security and conditions and hooks for that yet gesture language so right now we will see all these hooks 1st on the planet who
looks so you you have on hates books available for the planet it's mostly used by the song played in society such as the plant yeah and the applying and which allows you to have a way to to change the behavior of the plant and the executive books I believe that there and this room already used a case known about called it is that statement is that statements is contribute dual that is able to get all the queries executed by spread and get a few statistics on and how does it is that statements works it use all these folks so for example the executor socks run and finish and to get information about which queries are executed how many rows red uh how many buffers they used except for the process of taking who is also used by the that statements country you it's also used by extension written written by Dmitri from 10 which is called the g x to the value the least which is an extension that allows someone to have a white list of extensions but you can instead that so books on security and permissions so for example if you have check password it's a simple approach that allows you to check passwords according to your enterprise rules so it's a good that is called when a user is created or when the user the conditions of a user is just the client that occasion hook is the book which is called when someone tries to connect so it used by mainly tools such as the which is another country with you which shows you to wait bit if the blast of publication phase as a gesture also use it to add more checks tool on tonight connection and you have the kind of bunch books usually used by the SC gesture that get the gist here you have 5 books available for you just tell you about the approach that is called when you do the declared section of the function that get to just get function you have the effect of the skull beggar hook which is called when you start instituting the beginning of the function front end for the end of the function this can teach go for the beginning of a statement and St and kinase but and for the end of history it's used by freedom as far as I know which are the bigger the provider are provided by and by the beach and by another tool that I wrote called look on the score function and you get another 1 I said there was only a full kind of hooks actually there is under the 1 kind of books I wish I could put it in a specific category which is the attachment that the coke it's still hope that is called when progress needs to ask for shared memory the system it's used by the police that statements module to recall every queries executive in Geneva but in speak about the
initial reason in all those hooks but as you can see here is starts was 3 and we've got more and more of them to have denied the plot so how do they
work inside prospects books consists of global function points it's initially set to null and 1 scale may have to executive it checks if IDP global you function pointer is still set to know and if it isn't it executes the function point so all you have to do to execute the function is to set this global function pointer and provide a function that would be executed how do we said the
function when you're actually a hope function will be available through a shared library shall libraries of that and so on but you'll find that is instilled in the same directory of Uzbeks when post-processed will the shared libraries it 1st loads into memory and then it executes a function inside this and library calls and ask a PG story and this sections needs to set the pointer it may say the previous 1 to be able to call it if you want to do it but the main main function the main main work the PG honest the generating function needs to do is to set the global function how do
we and sets the function pointer we and set it up and the time at the no time PostgreSQL's on as a function of the shared library called the most of the geodesic of him and this function we'll and said its point usually it's simply restart the previous 1 so that the previous 1 can still be called so here is an example
of how it is put in skill so suppose that so this is an extract of the report on the spot it's fine imposed rest you have attacked the curation which shows you how you should write this function you need to write a function that we have 2 arguments 2 parameters the structure faults and in Figure 2 this is how it is the care in progress and then in the reverse pistols sign there is indication of a viable experience with conjugation underscore books which is set to know right it's we use all of that is that you are also shared the a whole so everything was somewhere here with all of this is 1 of the things all of them but but provides them to its itself is the responsibility of the extension of the shared library when it cools it'll function we should check if he has a previous book and then calls out well well written book will do that some so this is the variable that we need to change 1 of the owners got G honest in its function is called and pose risks so we'll have done the equipment Asian on its part will check if the book is set to something or other than new and calls it so now we will
write a few hooks will uh but so we're going to match with affairs and how to write code and we will do so not on every books available we will just grab this 1 the client integration of the executive hook detect password and effect on this project for we already had been how we use what will list already available extensions using them and we will see how to write the shed libraries that uses this so 1st we start with the
client but education took the client application hook get control just after science with on-station with index it before the user is which means that it's a really useful to do it yourself and instigation on something else to recall the modern events between sets delay after a failed the conjugation so we
already have accumulate use that use this works the OGI 28 is a country in which you will be available with as rescuers was granted it has a configurable DA that's allows you to but helps you to avoid those that's so you have your authentication after the authentication that they the constitution of the GA is inserted so that you can right away tried to connected as a gesture our priors some specific context to a little connection so is to power available in the but which pairs was fine in the contradicts a directory of its was and then you have another 1 which is connection the column it's written by tomorrow 1 from is available on GitHub collection it's gives you more control on the number of connections available and then what you have with the rest the progress you only have a go max Moscow connections that allows you to limit the number of connections per instance blockbuster but with a connection in it so you can have a limit and connections per user database of product addressed but
identification who function as we said previously has 2 parameters the first one thought is a complete structure described in hit fine of prosperous and where you can get the remote host the remote host name very much thought that the base name the username get connections and a few other things this status integer is a status quo which basically say if the connection is accepted by the not so this
example we show you how you can add to that right the fact that occasionally but who try to do is to fall below to deny a connection if a fight is present on your prices so would need to functions will need 1 functions to install the hook it's a very honest Gupta G. honestly and it's a function that was set and in this function what we will do is set the claimed that cation approach global function point the 2nd 1 is there to check the availability is the presence of the 5 and if the applies presents a row what's nice the connection so 1st
we need to initialize the the initial initialization of the hook happens in the endoscopic just going at function so we 1st have very cold of the previous a transit station hook to we save here and then on the classification book we set it with our own functions which is available for this function is quite simple now the 2 parameters with before the before if there was a previous approach we 1st call recalling before because if if this Coke denies the connection we don't want to do all chips so we 1st efforts execute the previous in the previous quote all those the connection we will check if the fire we want this available on so here we simply if we have this last peace slash prediction that's stuff fine on the fastest and and if it is here we do that you reports with parts of the vehicle and with simply throw this your message in the so if the file is present all you have is a factor error are which denies the connection and if it isn't you simply exist the functions and the connection is 0 you will see a bit data the use of these of this and they
executed cooks NAFO for the executive data the start ran finished and educator start cooking the did at the beginning of the execution of the tree that they executor in coach may be called more than once it accents directions and count so it's called of we've depends on how many temples you will have when you execute occurred because did the finished book is called after the last integer tyrannical and the adjusted and so visited at the end of the credit there are a lot of
continued use that use the agent to books that's probably the books that that was used so this kind of books are really interesting get information so on executive prayers and then module you for a all of already we already know is it is that's that's the that's the prince is a country which you will not so that we get some a bit of shared memory and each time the query is executed it gets the executed queries that the strength of the executives queries it gets a few information on the Executive query its duration how many of referees accused that have things and put them into memory and then you have a view that allows you to get this information from this with you but that's that is under the would quite interesting also available in of the uh press which gives source code this this module will execute automatically we love automatically medication the explained by of each query executes user queries on is how by I I find about that's what I was working at the purchase of office and they such a summer I wanted to be able to log in every query executed by superusers and it only wanted this kind of query because he wanted to be able to do auditing of this bridges so original user queries and these are specific modules that can get and get which only log queries according to some specific configuration queries the grammar protocol there are 2 other extensions written by tomorrow on draft from the crystal grammar is used to build a duration histogram of all queries executed and query recall that allows you to log queries executed in different but look for and the executor
Handbook function which will be the 1 will be used for the example we have only 1 parameter which is the structure where we get prairie desk and which allows you to get information on the command type is and insert is the mandate is to create extension extra on the query from the query string on the instrumentation structure which gives you a lot of information on the statistics together during the execution of the great except for so if we want to write an
exhibit a handbook this example we look at the low you to low queries executive on the back to the use of prior to the user uses so we will need 3 functions this time where we may want to consult the hook or will set the global function pointer we need 1 to understand the took and the last 1 to develop so 1st instead the coach if that is the same thing as before we are saying that the previous is if the handbook and then we set the executor handled with all functions are on function with simply check if the user has display user attributes log on that the prairies depending on this information and fire the next so other than so this is our function there is the parameter that we want use this time but it's available we check if the user is stupid user and if it is the user who is something called the log to log the query executive actually we don't look only the query will of all this superuser the name of this should the user fired this query and the query and then we call the previous the previous superuser pitches name from IT it is ideally come straight from prosperous I didn't write the it was already available to and his father
hook the only thing we have to do is to set the global function pointer to its previous but the question of
sorry the use of how they must just copy pension are called editor by when you exhibits your session or 1 both breast is uh stuff you have no way to you have no way to unload mission library all the theory of then we have the check that's what would be to say that that's where there is not a book which enables the connecting extension to get control when the user is created at all when a user is modified so when you use the creators statements all the ontologies as they index control before committing the the state so it's really useful if you want to check the password according to some of your enterprise rules for example you needed to have passed when we at least 8 characters known less all you need to check the parts for the against a dictionary that's the kind of use of this other possibilities reduction fast all simply diesel plaintext passwords your after 2 to the type of past religion either on the create part to user statements and created plan and critical mass for there is 1 major issue with this so it's really really less effective if you use and critic password if you use it increases fast with you will always have the same size of the password so you can check the size of the re password and you can check it against dictionary it gets more and more time to check that so this
approach is used by a country but you'll available in the president's was good which is password check which account is an extension of the country but you that's so we do if few checks to make sure that the password is not too weak just a few of the words and Basra check the sure to read the source code of sparse before using it so that you can change its and modified it to really stick to your enterprise world because so use crack the way that this this mode you just have a few lines 2 and comments to be able to use and
the 2 pastas who functions take 5 parameters that username and the password in the password type which simply states that if it is a plaintext password or an endophyte phosphorus pretty and some information on the body T times that of the year so we will
write a check pastrycook function and this book will deny the use of plaintext password so right so once again we need to functions mainly want to instead of and want to check if the user tries to use appendix password on critic
conservative look really exactly the same thing as before in this example I don't check the pressure I don't recall the previous hook which is that which we already see some examples of the scientific itself I have my function with these 5 parameters and all I do is check if the password is Appendix past if it it's appendix functions I call the ERA plots function to report nearer to the user saying that it is not allowed to use non cryptic passwords
we'll see later how to use these these hook in the
example at the end of the fucking
scumbag focal scumbag is a book called when the grass gets to the beginning statements of appeal just the function so it can be used in many ways it can be used to stops to logo the start of each function it can be used to profile actions it can be used to develop so the
previous I know that Suzie is appear the bigger which is the very for object history that you can use with it yet been written by enterprise to be here at the pier prefinal which gives you all the details on every statement indicated on every P just the functions and you have another 1 which is another for functions which do quite the same thing that the care profile but instead of storing it into fashion memory it would then in the upper part it's actually quite more efficient quite small really quicker than amplifier for the
purpose convex functions fixed to prices 1 is a structure that gives information on the institution states of the function and the 2nd 1 gives information on the function executive meaning you have information on which function you executes its name it slightly fewer so
simply rights for classical bait hook functions which loves each each function is equal to so we need 1st kiss ever for further function of this and other functions to the functioning initial Ivanhoe what we're producing that we simply set the hoax the Francoist hook then the function which is it's it's it's function was simply called the lies on the logical and store it intervention the name of the function in Europe factor how do we compile hooks well this is the usual like find you have just as easy to use as a general strike the GHS to combine its which is I have that suddenly the preferred way to compile hooks complexion library by you can put it in the country said directory of your purse rescue so scared to compare to compare it you just
need to use him if you want to use make it with says you will use this is vital to respond to be careful that you cannot use PGx as we is here just plugging it will be possible in and that 2 thanks to some work from high but it isn't possible in the previous rates so if you want to a compiler that killed a very erotic your profile you have to cookie source code in the country that's a directory of the preservice Pierce was script for this town you just need to
add the in style keywords after and what it will do is simply to use the delta S will fire in the data subdirectory of was if you can
use it it says it's better it's better because it's really simple to do and you can have as much simpler make time to do it but it's not always possible OK gist books you can accuse after so you have 2
ways to use hooks some first one of these to the cabin in the shipyard a library jects so you 1st style on the file system in the late subdirectory was rest your shared library so you've got this or that DLL files and then in the possession of conf file you will set the ship riddled libraries some functions allows you to have the other guy is that statements for example to give you some control of its execution but mostly the most important thing to do is to set the shepherd elaborate we can have many libraries sets you just need to separate them with governments they can have for example should libraries equal reduce that statements come out vigilant use regret and then you have to restart rest for frames employer
if we try to use in the book we we've seen is check aspirin hook which I called on the encrypted passwords I somebody who group analysis will find in my system they're in the but question the core high as I said at the and libraries the shit headed libraries got to onion cryptic preference and is supposed when I struck by rest I will have this message which bears me that we found the shall libraries and the loaded it's so at this time the global function pointer of efficient libraries is so how do we use it we don't have to call it's really it's during the use of parse for example if I have a user that secured these statements create user you want password to pursue the book would deny the execution of the state it would say that's the best part is that interested and so I cannot create dishes if I use unencrypted password just like this statement if we work my book those the use of encrypted that's why it works for create user it works also for if I try not to user with an unencrypted password it's denied any I tried to use it was interpreted as and it works so this is an example of using hoax we've the shall libraries there but you don't need absolutely to set this no need to set this script if you said this guy at look at absolute start time was grass we'll set the global function pointer that sometimes you don't want to use the hook every time for example on the PLGA data all fall on some of the case you don't want to pay the price of having the book already in state you just want to use it at some point so you still have to establish an libraries in your system and then you can use a statement called below that which allows you to the Shannon libraries at a specific time
so try way that they're in the coda we see previously about the uh the log of the get gist functions so I created appeared just get function which does not match I set my client mean in stage is going to the log and then I executive functions as my hooks is not yet so I don't have any more information if I loaded
my hook just like that and that is cute my function then I see the message coming from my hook function I don't have the message here I have it when I do that the phrase that you my functions more than 1 so just like this so that that 1 from generates areas that I have to the log with the fact that this helps me to know which functions are executed I can't said it's only when I want to use it I have of statements I don't have an antidote state you don't end nodes a shared library when you exist in my case here and I wasn't history when I exekias go when I close the connection the approach is another so we so that we
have around 20 hooks from 1 8 2 3 2 9 that's 1 in and 2 we have 2 more books we have a look at the loading hook and another planet we also have a really interesting Schwartz popular pages of books with PGx s and we have no known coach which has and hence capability it's the
object access the object Texas hook you couldn't use it with the draft statement there was no drop statements support with the object access its use by basically gestural to alert you to give a SELinux context to a on tonight to draw an object that
adding book but I mean the book was written by Martin lack the real name of keys emits a scholar and a scrapbook its aim is to intercept procedures before they are sent to several of whatever the sample OK if it is even flooding it is slow if it is EPA's crystal modern collector doesn't matter if we understand the message and it goes a little hooks to do just dumb luck catering for example will be be able to do 1 of 5 per database so you can have both an extension that would be able to write your log messages in different that fact it's already used by an extension could be jealous spot which is available ontologies and the
have is of the pattern book written by each of Japan this remain is past analyze hook it's what we owe Crary normalization within believes that statement in 9 and I
think and it's it's about everything have some hooks up a really interesting feature of course because it allows you to go behind to do more things than just what's as best is capable to do you can change its behavior from specific specific ways we need to be kosher so about which groups instead as we've seen before it's the hook responsibility to say that the previews book register and to fire them when the coke is 5 so you need be kosher about which tokens tell it to because to notice that many hooks because of course more the more you have books the more you have the pollens was performance so only installed the hopes that read all the examples and all the slides are available and kids have all the examples we've seen you have uh normally work includes it but you can try and use and that's about you have
any questions yes or no to that of the
fact that I of I don't and I wanted to work on this and this is the 2nd time I do this talk I gave it follows them there was dated paraded there already asked the same thing I wanted to work on this server for and then the 2 that I didn't find the time to whom I don't really know why I suspect it's because it's really in 3 changes of the behavior of phosphorus and it may be pretty bad if you if you know that things with it what about you know the use of the here and now you're have documentation on how to write a friend that the wrappers and you can have that on how to write books so yes it's something we need to to actually there was a discussion on this on the just characters at sometimes when there is a wanted to add a new hook but it didn't get to get an indication on its best or what for example if you can do and I get
back to the this example on the shuttle libraries here I just have 1 book but I considered too many books I can say for example uh only unencrypted password is specific 1 that if I if I say the gist that statements and so on which 1 is it what to explain which use the same hopes then it's is that statements that we all these assistance we simply said that of a function pointer and then but to explain we'll have this uh Oscar BG function phi if we see the piece that statement function so it need to save it so that we can use that to at the same time yet and I would rather I want you to a little bit of what I find the letter requesting interesting use you need to 1st and sell the book so you need to understand that so far out that that Didier Jialin find that that you have 5 as far as I know is already available uh we is the 1 taken sphere of enterprise beach uh I don't know if there is any Linux packages that allows you to put it on I guess you would have to compile the the debugger itself once you've done that you need to add the but the bigger extension and the database where you want to debug function and then use that jet mean which we show you the nice so the window with with everything in its to do the they that and we will be able to do depending on the usual functions and trigger functions of also thanks actually I really I really like this the profiler provided by enterprise is I think less interesting because it's really really it slows down the at the execution of a function so that's why I wrote so the locals functions with you which is really really much quicker but the profile yes it's a really fun to this is the last slide on your side not while all the rest of the world the
roots of this 1 within this 1 units on but you couldn't website that be at the end of the term but if you want to find it it's already include it's OpenOffice and the question of what that you know how how
Metropolitan area network
Email
Software developer
Forcing (mathematics)
Division (mathematics)
Translation (relic)
Compiler
Word
Computer animation
Hooking
n-Tupel
Right angle
Information
Videoconferencing
Physical system
Sheaf (mathematics)
Client (computing)
Formal language
Hooking
Extension (kinesiology)
Information security
Physical system
Chi-squared distribution
Metropolitan area network
Enterprise architecture
Process (computing)
Executive information system
Interior (topology)
Shared memory
Integral element
Sound effect
Bit
Port scanner
Functional (mathematics)
Connected space
Category of being
Internet service provider
Buffer solution
Phase transition
Data type
Arithmetic progression
Row (database)
Server (computing)
Automorphism
Rule of inference
Integral element
Operator (mathematics)
Database
Interrupt <Informatik>
Condition number
Information
Projective plane
Debugger
Operator (mathematics)
Line (geometry)
Grass (card game)
Computer animation
Query language
Personal digital assistant
Password
Statement (computer science)
Data Encryption Standard
Object (grammar)
Family
Pointer (computer programming)
Pointer (computer programming)
Scaling (geometry)
Computer animation
Function (mathematics)
Funktionspunktmethode
Price index
Functional (mathematics)
Plot (narrative)
Point (geometry)
Read-only memory
System call
Set (mathematics)
Structural load
Multiplication sign
Sheaf (mathematics)
Directory service
Functional (mathematics)
System call
Geodesic
Pointer (computer programming)
Pointer (computer programming)
Function (mathematics)
Library (computing)
Code
Parameter (computer programming)
Client (computing)
Mereology
Integral element
Pointer (computer programming)
Conjugacy class
Hooking
Insertion loss
Data structure
Arithmetic logic unit
Extension (kinesiology)
Traffic reporting
Metropolitan area network
Computer icon
Beta function
Projective plane
Sound effect
Price index
Functional (mathematics)
Inclusion map
Event horizon
Sample (statistics)
Computer animation
Function (mathematics)
Password
Dependent and independent variables
Figurate number
Arithmetic progression
Library (computing)
Reverse engineering
Authentication
Context awareness
Product (category theory)
Set (mathematics)
Client (computing)
Instance (computer science)
Directory service
Limit (category theory)
Automorphism
Event horizon
Number
Connected space
Subject indexing
Maxima and minima
Conjugacy class
Event horizon
Computer animation
Hooking
Database
Configuration space
Control theory
Modul <Datentyp>
Arithmetic progression
Code
Parameter (computer programming)
Parameter (computer programming)
Functional (mathematics)
Connected space
Hooking
Function (mathematics)
Funktionspunktmethode
System identification
Integer
Right angle
Remote procedure call
Data structure
Row (database)
Metropolitan area network
Group action
System call
Divisor
Computer file
Direction (geometry)
Counting
Bit
Prediction
Group action
Counting
Mereology
System call
Functional (mathematics)
Workstation
Connected space
Message passing
Hooking
Network topology
Integer
Error message
Purchasing
Read-only memory
Histogram
Statistics
Logarithm
View (database)
Multiplication sign
Source code
Insertion loss
Parameter (computer programming)
Integral element
Bridging (networking)
String (computer science)
Statistics
Statement (computer science)
Office suite
Data structure
Information
Shared memory
Process capability index
Parameter (computer programming)
Bit
Functional (mathematics)
Query language
Function (mathematics)
Module (mathematics)
Formal grammar
Configuration space
Queue (abstract data type)
PRINCE2
Communications protocol
Data type
Metropolitan area network
Information
Multiplication sign
Attribute grammar
Ext functor
Parameter (computer programming)
Automorphism
Functional (mathematics)
Inclusion map
Pointer (computer programming)
Computer animation
Hooking
Query language
Electronic visual display
State of matter
Logarithm
Multiplication sign
Source code
Password
Mereology
Rule of inference
Theory
Ontology
Reduction of order
Control theory
Extension (kinesiology)
Metropolitan area network
Enterprise architecture
Structural load
Planning
Ext functor
Line (geometry)
Subject indexing
Sparse matrix
Word
Computer animation
Mathematics
Password
Statement (computer science)
Text editor
Data type
Library (computing)
Asynchronous Transfer Mode
Computer animation
Information
Function (mathematics)
Mountain pass
Password
Multiplication sign
Password
Parameter (computer programming)
Parameter (computer programming)
Functional (mathematics)
Data type
Data type
Metropolitan area network
Mountain pass
Logarithm
Password
Parameter (computer programming)
Functional (mathematics)
Higher-order logic
Plot (narrative)
Computer animation
Hooking
Oval
Function (mathematics)
Password
Integrated development environment
Block (periodic table)
Pressure
Metropolitan area network
Enterprise architecture
Read-only memory
Group action
Mountain pass
Logarithm
Password
Grass (card game)
Mereology
Functional (mathematics)
Higher-order logic
User profile
Computer animation
Blu-ray Disc
Profil (magazine)
Function (mathematics)
Statement (computer science)
Modul <Datentyp>
Object (grammar)
Block (periodic table)
Chi-squared distribution
Classical physics
Metropolitan area network
Convex function
Hoax
Information
Divisor
State of matter
State of matter
Parameter (computer programming)
Directory service
Functional (mathematics)
Maxima and minima
Inclusion map
Arithmetic mean
Computer animation
Hooking
Data storage device
Function (mathematics)
Right angle
Data structure
Lie group
Library (computing)
Data type
Metropolitan area network
Source code
Boltzmann equation
Directory service
Variance
Compiler
Maxima and minima
Inclusion map
Computer animation
Bit rate
Profil (magazine)
Scripting language
HTTP cookie
Arc (geometry)
Chi-squared distribution
Metropolitan area network
Computer animation
Computer file
Structural load
Multiplication sign
Equaliser (mathematics)
Statement (computer science)
File system
Control theory
Functional (mathematics)
Frame problem
Library (computing)
Point (geometry)
Hoax
Parsing
Structural load
State of matter
Logarithm
Multiplication sign
Password
Client (computing)
Mereology
Hooking
Scripting language
Statement (computer science)
Absolute value
Physical system
Newton's law of universal gravitation
Metropolitan area network
Information
Mathematical analysis
Grass (card game)
Functional (mathematics)
Local Group
Maxima and minima
Length of stay
Message passing
Arithmetic mean
Pointer (computer programming)
Computer animation
Oval
Personal digital assistant
Function (mathematics)
Password
Statement (computer science)
Library (computing)
Area
Web page
Metropolitan area network
Structural load
State of matter
Logarithm
Total S.A.
Functional (mathematics)
Connected space
Length of stay
Message passing
Computer animation
Hooking
Personal digital assistant
Function (mathematics)
Statement (computer science)
Vertex (graph theory)
Library (computing)
Context awareness
Key (cryptography)
Server (computing)
Real number
Sampling (statistics)
Drop (liquid)
Drop (liquid)
Login
Message passing
Computer animation
Hooking
Database
Ontology
Statement (computer science)
Statement (computer science)
Information systems
Object (grammar)
Procedural programming
Extension (kinesiology)
Message passing
Subtraction
Slide rule
Parsing
Mathematical analysis
Density of states
Local Group
Latent heat
Sample (statistics)
Computer animation
Hooking
Oval
Statement (computer science)
Normal (geometry)
Dependent and independent variables
Statistics
Pattern language
Statement (computer science)
Physical system
Mathematics
Sample (statistics)
Hooking
Oval
Lecture/Conference
Wrapper (data mining)
Multiplication sign
Price index
Physical system
Slide rule
Logarithm
Multiplication sign
Password
Root
Profil (magazine)
Database
Extension (kinesiology)
Enterprise architecture
Debugger
Bit
Functional (mathematics)
Sphere
Maxima and minima
Inclusion map
Length of stay
Arithmetic mean
Pointer (computer programming)
Sample (statistics)
Computer animation
Oval
Personal digital assistant
Password
Statement (computer science)
Physical system
Window
Local ring
Library (computing)

Metadata

Formal Metadata

Title Hooks in PostgreSQL
Title of Series PGCon 2012
Number of Parts 21
Author Lelarge, Guillaume
Contributors Heroku (Provider)
License CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this license.
DOI 10.5446/19022
Publisher PGCon - PostgreSQL Conference for Users and Developers, Andrea Ross
Release Date 2012
Language English
Producer FOSSLC

Content Metadata

Subject Area Information technology
Abstract PostgreSQL's extensibility is well known. Most people have heard of user types, user operators, the new extension capability, and such. But few know about hooks in PostgreSQL. This talk will cover all kinds of hooks available in PostgreSQL, and will show some tools using them already. Since the 8.3 release, the PostgreSQL developers add many hooks in PostgreSQL. Some extensions already make use of such hooks in the planner and in the executor. pgstatstatements is one of the various examples available. This talk will give a large overview of the hook system, and how to use it. We'll also see some of the extensions making use of them.

Recommendations

Loading...
Feedback
AV-Portal 3.5.0 (cb7a58240982536f976b3fae0db2d7d34ae7e46b)

Timings

  744 ms - page object