Колян 2 Опубліковано: 2008-04-07 14:05:51 Share Опубліковано: 2008-04-07 14:05:51 В общем, я так По поводу Firebird vs. MySQL: все зависит от размеров базы. Если у тебя больше 300 юзеров и есть активные "качальщики" - советую Firebird. Кроме того у мускула (у плагина) есть проблемы на многопроцессорных машинах. А кто собсно проводил краш-тесты мускуля+стг? Может, стоит просто оттюнинговать мускуль? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-04-07 14:40:42 Share Опубліковано: 2008-04-07 14:40:42 Креш-тесты тут не при чем. Если навернуть молотком по рейду - то и он посыпется. Проблемы в архитектуре модуля. Я выше кинул ссылку - там было обсуждение в теме немного ранее. Ссылка на сообщение Поделиться на других сайтах
Storoge 0 Опубліковано: 2008-04-07 15:25:09 Share Опубліковано: 2008-04-07 15:25:09 Ладно, вернемся к нашим баранам. Буду пытаться работать с Firebird. Если люди работали, нельзя ли настройки Firebird сюда. В inetd.conf есть строчка: gds_db stream tcp nowait firebird /usr/local/bin/fb_inet_server fb_inet_server Вроде путь указан верно... В service тоже есть строчка про 3050 порт gds_db 3050/tcp #InterBase Database Remote Protocol gds_db 3050/udp #InterBase Database Remote Protocol В файле /usr/local/etc/firebird/firebird.conf что должно быть????????? Пробовал его редактировать # Specify the root directory under which Firebird is installed. # Can be used to override the OS-specifically determined one. # # Type: string # #RootDirectory = /var/db/firebird RootDirectory = /usr/local Как я понял, здесь надо указать директорию, куда установился firebird или что? Пробовал вариант по умолчанию (закомментирован) и /usr/local. DatabaseAccess = Full - тут вроде все понятно # ---------------------------- # External File Paths/Directories # # ExternalFileAccess may be None, Full or Restrict. If you choose # Restrict, provide ';'-separated trees list, where external files # are stored. Relative paths are treated relative to RootDirectory entry # (see above). Default value 'None' disables any use of external files # on your site. To specify access to specific trees, enum all required # paths (for Win32 this may be something like 'C:\ExternalTables', # for unix - '/db/extern;/mnt/extern'). # # NOTE: THE EXTERNAL TABLE ENGINE FEATURE COULD BE USED TO COMPROMISE # THE SERVER/HOST AS WELL AS DATABASE SECURITY!! # # IT IS STRONGLY RECOMMENDED THAT THIS SETTING BE USED TO LIMIT # EXTERNAL TABLE LOCATIONS! # # Type: string (special format) # ExternalFileAccess = Full - вот здесь не совсем понятно, что нужно писать..... # ---------------------------- # External Function (UDF) Paths/Directories # # UdfAccess may be None, Full or Restrict. If you choose # Restrict, provide ';'-separated trees list, where UDF libraries # are stored. Relative paths are treated relative to RootDirectory entry # (see above). Default value 'Restrict UDF' provides the same restrictions # as in FB 1.0. To specify access to specific trees, enum all required # paths (for Win32 this may be something like 'C:\ExternalFunctions', # for unix - '/db/extern;/mnt/extern'). # # NOTE: THE EXTERNAL FUNCTION ENGINE FEATURE COULD BE USED TO COMPROMISE # THE SERVER/HOST AS WELL AS DATABASE SECURITY!! # # IT IS STRONGLY RECOMMENDED THAT THIS SETTING BE USED TO LIMIT # EXTERNAL FUNCTION LOCATIONS! # # Type: string (special format) # UdfAccess = Restrict /usr/local/libexec/firebird/udf - тоже не совсем понятно # ---------------------------- # Temporary directories # # Provide ';'-separated trees list, where temporary files are stored. # Relative paths are treated relative to RootDirectory entry # (see above). Default value is determined using FIREBIRD_TMP, # TEMP or TMP environment options. Every directory item may have optional # size argument to limit its storage, this argument follows the directory # name and must be separated by at least one space character. If the size # argument is omitted or invalid, then all available space in this # directory will be used. # # E.g.: # TempDirectories = c:\temp # or # TempDirectories = c:\temp;d:\temp # or # TempDirectories = c:\temp 100000000;d:\temp 500000000;e:\temp # # Type: string (special format) # TempDirectories = /tmp - надеюсь, эту опцию я понял Далее идут стандартные опции, все стоит по умолчанию. # Legacy hash makes possible use of old security.fdb # after running misc/upgrade/security_database.sql. # If you want to disable logons with old passwords # after users' migration, set it to 0 (false). # Makes no difference when used with original # security2.fdb - it can't contain DES hash. # # Type: boolean # LegacyHash = 1 # ---------------------------- # Number of cached database pages # # This sets the number of pages from any one database that can be held # in cache at once. If you increase this value, the engine will # allocate more pages to the cache for every database. By default, the # SuperServer allocates 2048 pages for each database and the classic # allocates 75 pages per client connection per database. # # Type: integer # DefaultDbCachePages = 2048 # ---------------------------- # In-memory sorting module # # The amount of memory allocated for each sort block. # # Type: integer # SortMemBlockSize = 1048576 # # The maximum amount of memory to be allocated by the in-memory # sorting module. # # For Classic servers, this setting is defaulted to 8 MB. # Although it can be increased, the value applies to each client # connection/server instance and thus consumes a lot of memory. # # Type: integer # SortMemUpperLimit = 67108864 # ---------------------------- # Backward-compatible parameter ordering as it was in FB v1/IB # # Type: boolean # OldParameterOrdering = 0 # Boolean evaluation method (complete or shortcut) # # If your SQL code depends on side-effects of full evaluation of OR # and AND statements (right-hand-side terms), even if the expressions # final result could be determined by just examining the value of the # first term, you might need to turn this on. # # Type: boolean # CompleteBooleanEvaluation = 0 # ---------------------------- # # Determines the number of seconds that the lock manager will wait after a # conflict has been encountered before purging locks from dead processes # and doing extra deadlock scan cycle. Engine detects deadlocks instantly # in all normal cases, so this value affects things only if something goes # wrong. Setting it too low may degrade system performance. # # Type: integer # DeadlockTimeout = 10 # ---------------------------- # # How often the pages are flushed on disk # (for databases with ForcedWrites=Off only) # # Number of unflushed writes which will accumulate before they are # flushed, at the next transaction commit. For non-Win32 ports, # the default value is -1 (Disabled) # # Type: integer # MaxUnflushedWrites = 100 # # Number of seconds during which unflushed writes will accumulate # before they are flushed, at the next transaction commit. For non-Win32 # ports, the default value is -1 (Disabled) # # Type: integer # MaxUnflushedWriteTime = 5 # ---------------------------- # # This option controls whether to call abort() when internal error or BUGCHECK # is encountered thus invoke post-mortem debugger which can dump core suitable # for off-line analysis. When disabled engine tries to minimize damage and # for off-line analysis. When disabled engine tries to minimize damage and # continue execution. # # Note that setting this option to 1 makes engine produce traceable coredumps # when something nasty like SIGSEGV happens inside UDF. On Windows enabling # this option makes engine invoke JIT debugger facilities when errors happen. # # For debugging builds (DEV_BUILD), default value is 1 (Enabled) # # Type: boolean # BugcheckAbort = 0 # Prior to Firebird 1.5 various SELECT expressions generated unnamed # columns. This did not conform to the SQL standard. Fb 1.5 saw the # introduction of default aliases for these unnamed columns. In some # cases, particularly if string concatenation is used (via the || # operator) this breaks existing scripts. # # This setting will affect aliases generated via CONCATENATION, # CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP and EXTRACT. Setting # the value to true will disable the alias generation. It is only # recommended to be used where legacy scripts need to be supported. # It will be marked deprecated in Firebird 2.0 and removed in # Firebird 3.0. # # Type: boolean # OldColumnNaming = 0 # ---------------------------- # Client Connection Settings (Basic) # # Seconds to wait before concluding an attempt to connect has failed. # # Type: integer # ConnectionTimeout = 180 # # Seconds to wait on a silent client connection before the server sends # dummy packets to request acknowledgment. # # DO NOT USE THIS OPTION. It may hang or crash Windows on the client side as # explained here: http://support.microsoft.com/default.aspx?kbid=296265 # or may not prevent eventual inactive client disconnection for other OS. # # Normally, Firebird uses SO_KEEPALIVE socket option to keep track of # active connections. If you do not like default 2-hour keepalive timeout # then adjust your server OS settings appropriately. On UNIX-like OS's, # modify contents of /proc/sys/net/ipv4/tcp_keepalive_*. On Windows, # follow instrutions of this article: # http://support.microsoft.com/default.aspx?kbid=140325 # # Type: integer # DummyPacketInterval = 0 # ---------------------------- # TCP Protocol Settings # # The TCP Service name/Port number to be used for client database # connections. # # It is only necessary to change one of the entries, not both. The # order of precendence is the 'RemoteServiceName' (if an entry is # found in the 'services.' file) then the 'RemoteServicePort'. # # Type: string, integer # RemoteServiceName = gds_db RemoteServicePort = 3050 # # The TCP Port Number to be used for server Event Notification # messages. The value of 0 (Zero) means that the server will choose # a port number randomly. # # Type: integer # RemoteAuxPort = 0 # # TCP/IP buffer size for send and receive buffers of both the client # and server. The engine reads ahead of the client and can send # several rows of data in a single packet. The larger the packet size, # the more data is sent per transfer. Range is 1448 to 32767 (MAX_SSHORT). # # Type: integer # TcpRemoteBufferSize = 8192 # # Either enables or disables Nagle algorithm (TCP_NODELAY option of # socket) of the socket connection. # # Note: Currently is a default for classic and super servers. # # Type: boolean # TcpNoNagle = 1 # Allows incoming connections to be bound to the IP address of a # specific network card. It enables rejection of incoming connections # through any other network interface except this one. By default, # connections from any available network interface are allowed. # # Type: string # #RemoteBindAddress = # ---------------------------- # Locking and shared memory parameters # # Bytes of shared memory allocated for lock manager. # In Classic mode, the size given is used for the initial allocation. The # table expands dynamically up to the limit of memory. In SuperServer, the # initial size is also the final size. # Default is 96K on Linux and Solaris, 256K on Windows. # # Type: integer # LockMemSize = 262144 # # Number of semaphores for interprocess communication. # In non-threading environments, this sets the number of semaphores # available # # Type: integer # LockSemCount = 32 # # When a connection wants to lock an object, it gets a lock request # block which specifies the object and the lock level requested. Each # locked object has a lock block. Request blocks are connected to those # lock blocks either as requests that have been granted, or as pending # requests. # # The settings: # 1 means locks are granted first come, first served. # 0 means emulate InterBase v3.3 behavior, where locks are granted # as soon as they are available; can result in lock request # starvation. # # Type: integer/boolean # LockGrantOrder = 1 # # In Classic, only one client process may access the lock table at any # time. Access to the lock table is governed by a mutex. The mutex can # be requested conditionally - a wait is a failure and the request must # be retried - or unconditionally - the request will wait until it is # satisfied. This parameter establishes the number of attempts that # will be made conditionally. Zero value means unconditional mode. # Relevant only on SMP machines. # # Type: integer # LockAcquireSpins = 0 # # Tune lock hash list; more hash slots mean shorter hash chains. Only # necessary under very high load. Prime number values are recommended. # # Type: integer # LockHashSlots = 101 # ---------------------------- # # Bytes of shared memory allocated for event manager. # # Type: integer # EventMemSize = 65536 # =========================== # SuperServer Engine Settings # =========================== # # ---------------------------- # Which CPUs should be used (Windows Only) # # In an SMP system, sets which processors can be used by the server. # The value is taken from a bit map in which each bit represents a CPU. # Thus, to use only the first processor, the value is 1. To use both # CPU 1 and CPU 2, the value is 3. To use CPU 2 and CPU 3, the value # is 6. The default value is 1. # # Type: integer # CpuAffinityMask = 1 # ---------------------------- # Settings for the thread scheduler (Windows Only) # # If you have problems with computer response time, running firebird # on workstation, turn off thread scheduler. # # Type: boolean # UsePriorityScheduler = 1 # # The wait time, in milli-seconds (ms), before the priority of: # - an active thread is reduced to 'Low', or # - an inactive thread is increased to 'High' # # Note: The default value was chosen based on experiments on Intel # PIII/P4 processors. It should be increased for using in the computer # with lower speed processors. # # Type: integer # PrioritySwitchDelay = 100 # # Number of additional 'intervals' given to a 'High' priority thread. # # Type: integer # PriorityBoost = 5 # ---------------------------- # Garbage collection policy # # Defines how engine does garbage collection. Valid values are : # cooperative # background # combined # # Superserver has by default "combined" policy # Classic has by default "cooperative" policy. # Other values are ignored by classic server build # # Type: string (special format) # GCPolicy = combined # ============================== # Classic Server Engine Settings # ============================== # # ============================== # Settings for Windows platforms # ============================== # # ---------------------------- # Does the guardian restart the server every time it crashes? # 0 - only start the engine/service once # 1 - always restart the engine/service if it terminates # # Priority level/class for the server process. # # The values are: # 0 (Zero) - normal priority, # positive value - high priority (same as -B command line option) # negative value - low priority. # # Note: All changes to this value should be carefully tested to ensure # that engine is more responsive to requests. # # Type: integer # ProcessPriorityLevel = 0 # ---------------------------- # Local Connection Settings # # The name of the shared memory area used as a transport channel in local protocol. # Note that the local protocol in v2.0 is not compatible with any previous version # if Firebird or InterBase. # # IMPORTANT! If your host OS is Vista or you are running Windows 2003 or # Windows XP with terminal services enabled, and you need the local connection # to work, you should prefix the below value with "Global\", i.e. it should # be "Global\FIREBIRD". Please note that the prefix is case-sensitive. # # Type: string # IpcName = FIREBIRD # # The name of the pipe used as a transport channel in NetBEUI protocol. # Has the same meaning as a port number for TCP/IP. The default value is # compatible with IB/FB1. # # Type: string # RemotePipeName = interbas # ============================ # Settings for Unix/Linux platforms # ============================ # # # UNIX signal to use for interprocess communication # # Type: integer # LockSignal = 16 # ---------------------------- # Remove protection against opening databases on NFS mounted volumes # # ***WARNING*** ***WARNING*** ***WARNING*** ***WARNING*** # # This option removes an important safety feature of Firebird and can # cause irrecoverable database corruption. Do not use this option unless # you understand the risks and are prepared to accept the loss of the # contents of your database. # Unless this configuration option is changed from 0 to 1, Firebird can # open a database only if the database is stored on a drive physically # attached to the local computer - the computer running that copy of # Firebird. Requests for connections to databases stored on NFS mounted # drives are redirected to a Firebird server running on the computer that # "owns" the disk. # This restriction prevents two different copies of Firebird from opening # the same database without coordinating their activities. Uncoordinated # access by multiple copies of Firebird will corrupt a database. On a local # system, the system-level file locking prevents uncoordinated access to # the database file. # NFS does not provide a reliable way to detect multiple users of a file on # an NFS mounted disk. If a second copy of Firebird connects to a database on # an NFS mounted disk, it will corrupt the database. # Under some circumstances, running a Firebird server on the computer that # owns NFS mounted volumes is inconvenient or impossible. Applications that # use the "embedded" variant of Firebird and never share access to a database # can use this option to permit direct access to databases on NFS mounted # volumes. # DO NOT ENABLE THIS OPTION UNLESS YOU REALLY KNOW WHAT YOU ARE DOING. # # Type: boolean # RemoteFileOpenAbility = 0 # ---------------------------- # Remove protection against redirecting requests to other servers # # ***WARNING*** ***WARNING*** ***WARNING*** ***WARNING*** # # Ability to redirect requests to other servers was initially present # in Interbase, but was broken by Borland in Interbase 6.0, when # they added SQL dialects. Request redirection was fixed in firebird 2.0, # but today such behaviour (proxy) seems to be dangerous from security # point of view. Imagine, you have one carefully protected firebird server, # access to which is possible from global net. But in case when this server # has access to your internal LAN (may and should be restricted, # but often possible), it will work as a gateway for incoming requests like: # firebird.your.domain.com:internal_server:/private/database.fdb # It's enough to know name/IP of some internal server on your LAN, and for # this connection one even need not know login/password on external server. # Such gateway easily overrides firewall, installed to protect your LAN # from outside attack. # # DO NOT ENABLE THIS OPTION UNLESS YOU REALLY KNOW WHAT YOU ARE DOING. # # Type: boolean # Redirection = 0 ####################################### # # KB to Bytes Conversion table # ####################################### # # KB Bytes KB Bytes # ---- --------- ---- --------- # 1 1024 32 32768 # 2 2048 64 65536 # 4 4096 128 131072 # 8 8192 256 262144 # 16 16384 512 524288 # ####################################### # # MB to Bytes Conversion table # ####################################### # # MB Bytes MB Bytes MB Bytes # --- --------- --- ----------- --- ----------- # 1 1048576 64 67108864 448 469762048 # 2 2097152 128 134217728 512 536870912 # 4 4194304 192 201326592 640 671088640 # 8 8388608 256 268435456 768 805306368 # 16 16777216 320 335544320 896 939524096 # 32 33554432 384 402653184 1024 1073741824 При установке Stargazera ошибка: ... cat ./inst/var/stargazer/../00-base-00.sql >> .db.sql /usr/local/bin/isql -i .db.sql Use CONNECT or CREATE DATABASE to specify a database Statement failed, SQLCODE = -902 cannot attach to password database After line 0 in file .db.sql Statement failed, SQLCODE = -902 cannot attach to password database After line 2 in file .db.sql Statement failed, SQLCODE = -902 cannot attach to password database After line 3 in file .db.sql Statement failed, SQLCODE = -902 cannot attach to password database After line 56 in file .db.sql Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Use CONNECT or CREATE DATABASE to specify a database Подскажите, что у меня неправильно :bue: Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-04-07 16:15:36 Share Опубліковано: 2008-04-07 16:15:36 1. Файл настроек у меня весь "по умолчанию". Интерес может вызвать только RemoteServicePort (или RemoteServiceName, при чем только одна из них) и то, если тебе нужен какой-то особый порт, и RemoteBindAddress, если тебя не устраивает, что к базе можно подключиться отовсюду. При чем, если ты укажешь что-то отличное от localhost в RemoteBindAddress - этот самый хост нужно будет прописать и в настройках stg и в файле build. Аналогично и с портом. 2. В ошибках у тебя есть строчка "cannot attach to password database" - это говорит о том, что firebird не может найти свою базу пользователей и провести авторизацию. Ссылка на сообщение Поделиться на других сайтах
Storoge 0 Опубліковано: 2008-04-07 17:25:25 Share Опубліковано: 2008-04-07 17:25:25 Если я Вас правильно понял, то Вы пользуетесь Stg+Firebird на FreeBSD и все работает? Ссылка на сообщение Поделиться на других сайтах
Колян 2 Опубліковано: 2008-04-07 18:25:56 Share Опубліковано: 2008-04-07 18:25:56 Креш-тесты тут не при чем. Если навернуть молотком по рейду - то и он посыпется.Проблемы в архитектуре модуля. Я выше кинул ссылку - там было обсуждение в теме немного ранее. Тогда тут ИМХО, нужно смотреть в модернизацию модуля, а не съезжать на другие СУБД. Готов помочь материально(около 30-40 уё). Думаю, ищщо кто-то готов. Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-04-07 18:55:23 Share Опубліковано: 2008-04-07 18:55:23 Если я Вас правильно понял, то Вы пользуетесь Stg+Firebird на FreeBSD и все работает? Нет. FreeBSD я не использую. Но кто-то тут на форуме писал об успешном запуске Stg+Firebird на фре. Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-04-07 18:56:56 Share Опубліковано: 2008-04-07 18:56:56 Тогда тут ИМХО, нужно смотреть в модернизацию модуля, а не съезжать на другие СУБД. Готов помочь материально(около 30-40 уё). Думаю, ищщо кто-то готов. А никто и не сьезжает. Firebird - это наша разработка. Мы ее поддерживаем. MySQL - сторонняя. Мы ее включили, но вся поддержка лежит на Максе. Ссылка на сообщение Поделиться на других сайтах
Колян 2 Опубліковано: 2008-04-07 19:08:37 Share Опубліковано: 2008-04-07 19:08:37 Ну, Макс довольно таки хорошо мне однов ремя помогал решать траблы, так что ему респект! Огромный при том! Вам тоже! Ссылка на сообщение Поделиться на других сайтах
Storoge 0 Опубліковано: 2008-04-08 05:57:44 Share Опубліковано: 2008-04-08 05:57:44 У меня в файле firebird.log такие ошибки: cs.bgita2.ru Mon Apr 7 20:08:50 2008 inet server err: setting KEEPALIVE socket option cs.bgita2.ru Mon Apr 7 20:08:50 2008 inet server err: setting NODELAY socket option cs.bgita2.ru Mon Apr 7 20:08:55 2008 INET/inet_error: read errno = 38 Как с этим бороться? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-04-08 07:12:27 Share Опубліковано: 2008-04-08 07:12:27 Firebird как запускаеш? inetd/xinetd? Ссылка на сообщение Поделиться на других сайтах
Storoge 0 Опубліковано: 2008-04-08 07:28:30 Share Опубліковано: 2008-04-08 07:28:30 Да, inetd Ссылка на сообщение Поделиться на других сайтах
Storoge 0 Опубліковано: 2008-04-08 08:13:39 Share Опубліковано: 2008-04-08 08:13:39 Все, достал меня это firebird Буду с mysql работать. Ссылка на сообщение Поделиться на других сайтах
DReAsTY 0 Опубліковано: 2008-04-08 08:54:05 Share Опубліковано: 2008-04-08 08:54:05 Аналогично Ссылка на сообщение Поделиться на других сайтах
napTu 4 Опубліковано: 2008-04-27 23:24:28 Share Опубліковано: 2008-04-27 23:24:28 скажите, а как вы вот с этим боритесь: user.cpp:1344:11: warning: #warning "TODO: gcc v. 4.x generate ICE on x86_64" user.cpp:1432:23: warning: #warning "TODO: gcc v. 4.x generate ICE on x86_64" после этих двух сообщений действительно зависает, хотя и не 64бит система(процесор) - фря-7 на виртуалписи, на ноуте с интел центрино... Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-04-28 06:53:38 Share Опубліковано: 2008-04-28 06:53:38 Эти два сообщения на самом деле ни ошибки ни предупреждения. Это я оставил для напоминания о том, что в данном месте пришлось написать неочевидный код, т.к. старый приводил к краху компилятора на 64-битных системах. Так что они тут совершенно не при чем. Ссылка на сообщение Поделиться на других сайтах
napTu 4 Опубліковано: 2008-04-28 09:00:05 Share Опубліковано: 2008-04-28 09:00:05 я понимаю что это не ошибки, но у меня действительно зависает на процессе компиляции user.cpp компилятор # gcc -v Using built-in specs. Target: i386-undermydesk-freebsd Configured with: FreeBSD/i386 system compiler Thread model: posix gcc version 4.2.1 20070719 [FreeBSD] фря7 Ссылка на сообщение Поделиться на других сайтах
napTu 4 Опубліковано: 2008-04-28 09:50:42 Share Опубліковано: 2008-04-28 09:50:42 извиняюсь, оно просто пол часа компилится... Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-04-28 10:58:40 Share Опубліковано: 2008-04-28 10:58:40 Зависания компилятора - проблемы разработчиков компилятора. Это не к нам. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас