load.l
上传用户:blenddy
上传日期:2007-01-07
资源大小:6495k
文件大小:2k
源码类别:

数据库系统

开发平台:

Unix_Linux

  1. ." This is -*-nroff-*-
  2. ." XXX standard disclaimer belongs here....
  3. ." $Header: /usr/local/cvsroot/pgsql/src/man/Attic/load.l,v 1.4 1998/07/25 00:17:30 momjian Exp $
  4. .TH LOAD SQL 01/23/93 PostgreSQL PostgreSQL
  5. .SH NAME
  6. load - dynamically load an object file
  7. .SH SYNOPSIS
  8. .nf
  9. fBloadfR 'filename'
  10. .fi
  11. .SH DESCRIPTION
  12. .BR Load
  13. loads an object (or ".o") file into Postgres's address space.  Once a
  14. file is loaded, all functions in that file can be accessed.  This
  15. function is used in support of ADT's.
  16. .PP
  17. If a file is not loaded using the 
  18. .BR load
  19. command, the file will be loaded automatically the first time the
  20. function is called by Postgres.
  21. .BR Load
  22. can also be used to reload an object file if it has been edited and
  23. recompiled.  Only objects created from C language files are supported
  24. at this time.
  25. .SH EXAMPLE
  26. .nf
  27. --
  28. --Load the file /usr/postgres/demo/circle.o
  29. --
  30. load '/usr/postgres/demo/circle.o'
  31. .fi
  32. .SH CAVEATS
  33. Functions in loaded object files should not call functions in other
  34. object files loaded through the
  35. .BR load
  36. command, meaning, for example, that all functions in file A should
  37. call each other, functions in the standard or math libraries, or in
  38. Postgres itself.  They should not call functions defined in a different
  39. loaded file B.  This is because if B is reloaded, the Postgres loader is
  40. not *(lqsmart*(rq enough to relocate the calls from the functions in A into
  41. the new address space of B.  If B is not reloaded, however, there will
  42. not be a problem.
  43. .PP
  44. On DECstations, you must use 
  45. .IR /bin/cc
  46. with the *(lq-G 0*(rq option when compiling object files to be
  47. loaded.
  48. .PP
  49. Note that if you are porting Postgres to a new platform, the
  50. .BR load
  51. command will have to work in order to support ADTs.