Snapshot isn't doing anything

I setup my WordPress multisite using multi-db 256db's.

After a few days, I finally have everything exactly how I want it in order to get a snapshot of my entire system. I have created 6 sites, activated plugins, themes, configured pro-sites, memberships, a ton of plugins, etc on each site as I want it for now.

My next step is going to be a HUGE one, so I am trying to get a 'snapshot' of my system as it is just in case everything does not go well.

First of all:
I could not find the select box to simply backup my entire system. It was making me choose one site at a time, which makes zero sense to me.

Second:
I chose to backup to dropbox for now, and even after 2 hours, nothing has shown up in my dropbox folder other than the initial folder and file that were created when I approved the app.
*I am not backing up files but just all the db tables, I have backup of the files already

I did choose to have it update right away, so I am guessing snapshot dropbox export is just broken...

Question:
Is there any reliable way of getting a snapshot of my entire system as it is right now using software from wpmu?

Reason:
My next step is to activate bbPress and use the importer (my company wrote it for JJJ) to import the vbulletin forums.

I'm talking 50k members and hundreds of thousands of posts. Obviously if something goes wrong, and it could, the only way to fix this is to start over.

Because I created 256 db's by hand, and spend literally 40+ hrs configuring everything. I want to make ABSOLUTE CERTAIN that I have a proper backup that i can restore before I do this with vbulletin.

So..... what are my options?

Can I trust snapshot, and how do I get a mirror of everything on the network?

thank you for your time.

  • shawng

    Ahh crap, just checked my db, and sure enough errors all over the place.

    [Sat Sep 29 16:57:24 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error  for query DESCRIBE 'wp3_sitecategories';  made by require_once('wp-admin/admin.php'), do_action('snapshots_page_snapshots_new_panel'), call_user_func_array, snapshot_admin_panels->snapshot_admin_show_add_panel, snapshot_admin_metaboxes->snapshot_metabox_show_backup_tables_options, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/
    [Sat Sep 29 16:58:07 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error  for query DESCRIBE 'wp3_sitecategories';  made by require_once('wp-admin/admin.php'), do_action('snapshots_page_snapshots_new_panel'), call_user_func_array, snapshot_admin_panels->snapshot_admin_show_add_panel, snapshot_admin_metaboxes->snapshot_metabox_show_backup_tables_options, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/admin.php?page=snapshots_new_panel
    [Sat Sep 29 17:10:02 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error  for query DESCRIBE 'wp3_sitecategories';  made by require_once('wp-admin/admin.php'), do_action('snapshots_page_snapshots_new_panel'), call_user_func_array, snapshot_admin_panels->snapshot_admin_show_add_panel, snapshot_admin_metaboxes->snapshot_metabox_show_backup_tables_options, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/admin.php?page=snapshots_settings_panel
    [Sat Sep 29 17:10:29 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error  for query DESCRIBE 'wp3_sitecategories';  made by do_action('wp_ajax_snapshot_show_blog_tables'), call_user_func_array, DBSnapshot->snapshot_ajax_show_blog_tables, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/admin.php?page=snapshots_new_panel
    [Sat Sep 29 17:16:10 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error  for query DESCRIBE 'wp3_sitecategories';  made by require_once('wp-admin/admin.php'), do_action('snapshots_page_snapshots_new_panel'), call_user_func_array, snapshot_admin_panels->snapshot_admin_show_add_panel, snapshot_admin_metaboxes->snapshot_metabox_show_backup_tables_options, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/admin.php?page=snapshots_edit_panel
    [Sat Sep 29 17:17:38 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error  for query DESCRIBE 'wp3_sitecategories';  made by require_once('wp-admin/admin.php'), do_action('snapshots_page_snapshots_new_panel'), call_user_func_array, snapshot_admin_panels->snapshot_admin_show_add_panel, snapshot_admin_metaboxes->snapshot_metabox_show_backup_tables_options, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/admin.php?page=snapshots_destinations_panel
    [Sat Sep 29 17:18:57 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error  for query DESCRIBE 'wp3_sitecategories';  made by require_once('wp-admin/admin.php'), do_action('snapshots_page_snapshots_new_panel'), call_user_func_array, snapshot_admin_panels->snapshot_admin_show_add_panel, snapshot_admin_metaboxes->snapshot_metabox_show_backup_tables_options, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/admin.php?page=snapshots_new_panel

  • Tom Eagles

    @shawng if in doubt go to your server and use phpmyadmin and do a full export of the mysql database you can select the whole thing from top to bottom, if you have all the site files as you said backed up then if needed a simple import of the exported database will get you backup. To be honest all my backups are done manually even though they can be configured on the server. I just feel safer knowing its done...

  • shawng

    Hi Tom
    Yes, I also do backups via mysql directly. The annoying part about that though, and it could be my lack of knowledge, is because I am running 256 dbs in multi-db, I have to backup each one by hand one at a time.

    That is what I was expecting snapshot to do, as it states many times in the description that it backs up the entire database or tables I choose.

    As the plugins are all from wpmu, I was expecting everything to run smoothly. So far I have intentionally kept all other plugins off the server as I want just wpmu so there is no excuse for things to not work correctly.

  • Tom Eagles

    @shawng

    hi again :slight_smile: what server platform are you using, one of the guys here @aecnu is the server guru round here, perhaps he can advise you on a more efficient process to automate the server backup of your tables untill this is sorted out at least that way you can feel safe in the knowledge that you can proceed on with the development with a full backup just in case. Not the ideal answer but certainly a safe work around.

    Hopefully @Barry will pick up this one he's the lead dev on this.

  • Paul

    @shawng, going to try and work my way through your questions...

    First of all:
    I could not find the select box to simply backup my entire system. It was making me choose one site at a time, which makes zero sense to me.

    [Paul] There is not one. At the moment Snapshot does not provide an option to backup the entire system (database + file) in one archive. The reasons for this are mostly historical. The Snapshot plugin was designed originally to be a quick option to take a image of your database table before you install some complex plugin or theme. Think BuddyPress. With Snapshot you would have the option to roll back the database to the previous state. Plus we have members running hundreds if sites within a Multisite environment. So actually creating that large backup of all sites at once is a task. Then you get into restores. What happens if you have one site get corrupt and need to restore. With a full backup option you would have to restore all site and loose data. With Snapshot you can restore just the single site. But like you there are many others asking for a single backup options. We will probably provide an option for that but underneath the zip files will still be by site.

    Second:
    I chose to backup to dropbox for now, and even after 2 hours, nothing has shown up in my dropbox folder other than the initial folder and file that were created when I approved the app.
    *I am not backing up files but just all the db tables, I have backup of the files already

    I did choose to have it update right away, so I am guessing snapshot dropbox export is just broken...

    [Paul] The sending of the files to the remote destinations is not automatic. Meaning if you run a manual snapshot archive this is a two step process. While the initial backup will be created locally the sending of the files to the remote destination is queued by a WP-cron process. As will alll WP-cron process this requires traffic to your front-end site. At the moment there is no other option like setting up your own UNIX cron.

    So my question back to you is when you ran the snapshot did it actually create an archive? You can tell this by going to the Snapshots > All Snapshots where you will see the listing.

    Question:
    Is there any reliable way of getting a snapshot of my entire system as it is right now using software from wpmu?

    [Paul] Yes, snapshot. But again this is not all sites at once. You will need to setup each of your 6 sites with snapshot configurations.

  • Paul

    [Sat Sep 29 16:57:24 2012] [warn] [client 25.134.16.34] mod_fcgid: stderr: Pro Sites database error for query DESCRIBE 'wp3_sitecategories'; made by require_once('wp-admin/admin.php'), do_action('snapshots_page_snapshots_new_panel'), call_user_func_array, snapshot_admin_panels->snapshot_admin_show_add_panel, snapshot_admin_metaboxes->snapshot_metabox_show_backup_tables_options, snapshot_utility_get_database_tables, m_wpdb->query, referer: http://mysite.com/wp-admin/network/

    @shawng, Not sure about your message on your second post. This is errors from your database table 'wp3_sitecategories'. Prior to backup the Snapshot tool has the task of determining what tables go to which if your sites. In that process it then runs the standard 'DESCRIBE' command against each table. This will provide the details on the table structure. If it cannot run this SQL command it throws an error.

    I've see this report before from other users. I'm not sure how this table is getting created. Basically the 'sitecategories' is shown in your MySQL but doesn't have any structure.

    From the WordPress Codex the wp_sitecategories table is created

    If global terms (global_terms_enabled = true) are enabled for a site the wp_sitecategories table holds those terms.

    So go into your phpMyAdmin and locate this table. Not sure where since you stated you are 256 databases. Check the table using MySQL tools. Does if have rows? Does it have structure? It not then either delete it or exclude this table from your Snapshot table selections.

    With all things Snapshot I'm here to help. The snapshot 2.x which was just released was verified by 3 different users to work with Multi-DB. I'm not sure on their setup. But always willing to take at look at your site if needed.

  • aecnu

    Greetings Everyone,

    The key to this one is that @shawng claims to have a dedicated server and therefore should have root access.

    If this is indeed the case, he should go to where the databases are and just enter a simple tar command that will whip them all up in a single shot.

    I do not know about Debian, but the path to the databases on CentOS would be /var/lib/mysql

    So I would ssh to that folder and then run the command to tar all the database files in one shot: tar -cvf mydatabases.tar ./

    Then if needed to restore the backup you would simply run the following command from the same folder: tar -xvf mydatabases.tar

    This process can be used for almost any folder you want and one of the greatest things is that file permissions are maintained within the archive and restored with restoration of the archive

    No fuss no muss.

    Cheers, Joe

  • shawng

    To answer back:

    1. Here is the screenshot of my 'snapshots' page, showing nothing in the archive.
    no-snapshots

    2. When I go into my server uploads/snapshots/ I have a number of sub-directories in there but no zip files anywhere.

    3. Mysql errors: wp3_sitecategories...... First of all wp3_ is not at all what my db prefix structure is. Not even close. In other words, if snapshot is ever looking for anything wp3_ it will not find what it needs.

    In my case because I am using 256 db's, and we are talking about site id#3 we are looking into the table (_ec)
    *using the md5 tool from wpmudev*
    That database is indeed populated and the table prefixes are 'xyz_3_' as it should be.

    Bottom line with this one:
    snapshot is not at all taking into account having multi-db installed, so it is not even looking for the proper db in the first place, nor is it figuring out the proper db prefix.

    I don't see any way how snapshot can possibly be working with these problems.

    4. dropbox:
    A day later, when the wp-cron job as run, looking at cron logs, there indeed are still no files sent. But then I think I already showed in #1 that the files are not even being created so there is nothing to send.

    Sadly, no there is not an easy way to determine there in the Multi-DB system the table actually exists. The interface with which Snapshot deals with the tables is through the standard WordPress DB API. My understanding of Multi-DB is there tables are randomly spread across the databases. This is an attempt to spread the load. I'm sure there is a pattern or reason.

    Of course there is a pattern to figure out if the table exists.
    Wpmu even provides a tool for this
    https://premium.wpmudev.org/db-tools/md5.php

    It's simple, we are backing up site id#3 so we input #3 into the md5 tool, which gives us a string eccbc87e4b5ce2fe28308fd9f2a7baf3

    taking the first 2 letters ec

    so we are looking for table that ends with _ec

    If there wasn't a guaranteed way to 100% know which table to look in, then nothing would function at all.

    The issue is more that the snapshot plugin does not check to see if multi-db is installed. You need to know that, to know which database to go in and back up.

    Snapshot then simply assumes that it is backing up the primary database in all cases.

    Unless I am missing something, and I spent most all morning reading the code, so don't think I am.... there is no way that snapshot can work with sites using multi-db in it's current state.

    I am willing to give access to the developers here for testing if it would help.

    Don't close my topic... it's is in NO WAY resolved!

  • aecnu

    Greetings shawng,

    I closed the topic because I gave a straight forward answer and cure to the backing up issue irrelevant of the Snapshot plugin.

    I have left it open now to let the lead developer @Paul decide if he is going to pursue making it work with Multi DB or not, it is not my call.

    The marking as resolved or in fact marking it as not resolved has in fact brought your ticket back up to our attention - funny how that works.

    Cheers, Joe

  • shawng

    @aecnu
    Thanks.

    I understand that you did offer another option for backup, and yes, I do run a weekly cron job to backup my databases to my development server.

    The question is about getting snapshot to work in a multi-db (wpmu plugin) environment.

    After reading through all the code (I'm a decent developer) I do not see how it can possibly work with multi-db setups, which is why I gave a long detailed answer.

    I am trying to provide needed information for the developers to extend the plugin to work properly with other wpmu plugins (multi-db).

    As it stands now, my guess is that if I actually tried to do a restore with snapshot, it would actually destroy my current setup. A gamble I am not currently willing to take.

    It is because snapshot currently does not seem to work with my setup, that I feel that ticket does not deserve to be marked as resolved.

    I can't imagine that @Paul is not going to fully support multi-db as it's is indeed a wpmu plugin and is the ONLY reason I signed up in the first place.

    WPMU describes the difference between multi-db, and hyper-db as the 'support offered by wpmu vs. the support offered in the wp forums'.... Basically saying buy our product because we support it and WordPress doesn't really support hyper-db.

    Once the snapshot plugin is fixed, then of course the topic should be closed :slight_smile:

  • Paul

    @shawng, Thanks for providing access to your site.

    My first step was to try and run a snapshot backup myself. I setup a new Snapshot configuration for your site biblestudy.anointed.net. You should see this in the listing named 'snapshot - paul test'. When I tried to run this the screen just went back to the listing. Normally you will see a listing of the tables and progress meters as each table backup is complete. Not good.

    After some digging I saw the JavaScript issue. It was because of this JS error the backup was aborting. Not sure why this was causing issue on your site and not other test sites I'm running. Then again I noted you are running WP 3.5 beta 1 which just came out. And includes a new version of jQuery 1.8.2. WP 3.4.2 has only jQuery 1.7.2 So looks like I need to check the code for changes.

    I've uploaded a new beta version of Snapshot (2.0.3 beta 7). This version does have some code patched to work better with Multi-DB. From the table listing on the Snapshot screen you can see the tables are now listed properly. See screenshot.

    With the beta version uploaded and the patched JavaScript in place. When I attempt to run a manual backup I'm now seeing the another error (see second screenshot). The error is related to Multi-DB

    Unknown: errno:8 Use of undefined constant DATACENTER - assumed 'DATACENTER' /home/anointed.net/public_html/wp-content/db.php on line 287

    So I'm going to stop there. I really don't want to start messing around with your Multi-DB configuration. I will tell you that for Snapshot during the backup and restores processing we are very sensitive to errors and warning and will abort over the slightest issue. So this is why you are not seeing this error on other page loads.

    One other things I noticed and related to the upload files path. As you will note on the Snapshot form there is a section to backup files. Normally there are 2-3 options. - None, All, Selected. The snapshot code will figure out and display the site's upload path on the second option (see third screenshot). On your system nothing is displayed. After digging into the code more and the database I found the issue. The path is derived from the 'upload_path' set in the site's wp_options table. I checked the #4 site and the main site (global) and for some reason the row is there in the options table but the values are blank. So taking this a step I uploaded a small image to the Bible Study site but the wp_options value is still not set. Will investigate this further after hearing back from you.

    And a final note. Related to your other thread about the Chat plugin and system resources. While I was working within your wp-admin system I noted the pages take 10-25 seconds to load each time. You mentioned in the other thread about the tremendous horsepower of the dedicated server. I would think the page loading with wp-admin to be much much faster. Still I think there is a database tuning issue. Just my opinion but having not seen the mysql configuration I can't be sure.

  • shawng

    Thanks for the information.

    Not sure what I should do with any of it, but I appreciate it anyhow. If you need to do further testing, feel free.

    I'm not sure what the problem with the uploads table could be. This was a standard WordPress install, before I even activated the site itself, I had already setup the 256 databases, so we had a 100% virgin setup to start with.

    After activating WordPress, in the global table, I then turned on multi-db. After that point, I then turned on multisite and everything populated properly.

    I am able to upload files without issue on all of the sites. In fact I just tried an image and it worked /wp-content/uploads/sites/4/2012/10/6.jpg

    Here is the info from wp-config:

    /* Multisite */
    define('WP_ALLOW_MULTISITE', true);
    
    define('MULTISITE', true);
    define('SUBDOMAIN_INSTALL', true);
    define('DOMAIN_CURRENT_SITE', 'anointed.net');
    define('PATH_CURRENT_SITE', '/');
    define('SITE_ID_CURRENT_SITE', 1);
    define('BLOG_ID_CURRENT_SITE', 1);
    
    define( 'FS_METHOD', 'direct' );
    define('WP_MEMORY_LIMIT', '128M');
    define('WP_POST_REVISIONS', false );
    // define('FORCE_SSL_LOGIN', true);
    // define('FORCE_SSL_ADMIN', true);
    // define('COOKIE_DOMAIN', 'www.yourwebsite.com');
    define('AUTOSAVE_INTERVAL', 300 ); // the value should be in seconds!
    define('DISALLOW_FILE_EDIT',true);
    define('WP_CACHE', true);
    define('EMPTY_TRASH_DAYS', 1 );  // 1 days
    
    define( 'SUNRISE', 'on' );
    define('DOMAINMAPPING_ALLOWMULTI', true);
    
    /* affiliates plugin */
    define('AFFILIATE_COOKIE_DAYS',30);
    
    /* bp multi-blog */
    define( 'BP_ENABLE_MULTIBLOG', true );

    If you are at all interested in continued testing, then feel free. I want to make absolute certain that everything is as perfect as possible before I get to far along with this project. As you can see, there is relatively little data in the sites right now, so if I really had to, I could wipe the tables and start over, though not sure that is needed.

    The server is not brand new, but is up to date and fully dedicated. I'm not sure at all why the admin is so slow at times. There are no other processes really running on the server to cause issues.

    I can provide mysql info, or root login if it would help. I'd be really interested in seeing what you find and what might be improved. I'm not much of a sysadmin myself, but can make my way around a bit. I do keep everything on the server fully up to date but as far as tuning mysql, well that's voodoo to me :slight_smile:

    Once again, thanks for your time. I hope working together we are able to help find bugs and provide even better products for everyone.

  • Paul

    @shawng, since I wrote this I pulled down and setup a local WP 3.5 beta Multisite instance. Seems there is a serious bug in the logic related to getting the upload path. When I'm on the primary site and call

    switch_to_blog($some other blog id) then wp_upload_dir() in WP 3.4.2 it would return the proper blog media upload paths.

    But for some reason in 3.5 beta 1 when on the primary the paths are not updating. I posted this in WP Trac. Hope to see some feedback soon. For now you will not be able to backup media/files.

    On my system I installed the beta tester plugin to get nightly builds. Tried updating just a few minutes ago and broke my system. Some error about Imagemagik.

  • Paul

    @shawng, also thanks for the detail on your previous post. I did look at your wp-config.php and saw those. I'll keep on the snapshot testing during the week. Hopefully I can get this wrapped up. And thanks again for providing access. Always helps to have a real server instead of just my local systems. Because local always seems to run fast (and it should) using a real remote server provides a level of how things really work.

    I'll let you know if I find anything as the week goes on.

  • Paul

    @shawng, Alright some progress at least for today. I went into your version of Snapshot and turned off error_reporting(); which as part of the plugin code I turn on full reporting for backups and restores. I think I'll just make this a configuration option so the admin can turn on/off as needed if things need investigation.

    So anyway you should see the my test snapshot item has two backups.

    Have not attempted a restore. I think for that one I want to setup a new blog that I can test again. Not against one of the existing blogs.

  • Paul

    @shawng, Getting back to your Snapshot issues today. I just uploaded Snapshot 2.0.3 Beta 10. This has all the changes for your site plus some from other users not related to your issue.

    Not sure if you are cleaning house or what. I just logged into your wp-admin and noticed most all the plugins except 4 were disabled. I activated the Snapshot beta and ran a quick backup on a sub-site. Seemed to do what I expected. Also, I patched the code to work with the WordPress 3.5 beta you are running.

    I would like to get this thread closed out. If we can get back to this and have you verify the changes are done.

    Let me know.

  • shawng

    @Paul
    Yeah, I was getting really tired of having 10 second admin page loads so I wiped everything out and started over. Each step along the way I am measuring extra memory consumption and average page load times.

    I am back around 1-2 seconds as expected, but then again, I have only activated about 1/2 of the plugins. At the moment I am not really running any wpmu plugins other than multi-db and a few small ones.

    We did find a rather glaring security issue (possibly with multi-db) that took a day for my sysadmin to sort out. If it does turn out to be directly related, I'll send a personal email as I wont post it publicly.

    My goal tomorrow is to reactivate the pro sites plugin, tweak it a bit and do a lot of testing before activating anything else. I have complete backups of my entire site done each hr on the hr, so I can go ahead and do a snapshot and let you know if it works without fear of breaking what I have.

    I'm just glad I could help out. If you ever need to do any testing on multi-db for anything else, just holler and I'll let ya back in.

  • shawng

    @Paul
    I went ahead and reinstalled the snapshot plugin and created downloads for all 8 blogs.

    Only problem I see is that when I click on the zip download link, it does not download the zip, but simply refreshes the page.

    also:
    is it possible to have the sites backed up to all 3 options (local, amazon, dropbox) within just 1 snapshot?
    *I click add destination, but it only allows us to select 1 at a time. I'd feel much better having them saved in at least 2 if not all locations.

    idea:
    for future.. would be nice if on pro-sites module if you can select to auto backup the site and choose destination and frequency when creating the pro-sites plan.

    What I don't see is an automated way for the program to add new snapshots all by itself when new blogs are added.

    I'm trying to picture just how long it would take me each day to do this by hand when I have hundreds of people signing up at once. that would suck.....

    well 5am, going to bed,

  • Paul

    @shawng,

    Only problem I see is that when I click on the zip download link, it does not download the zip, but simply refreshes the page.

    Yep, known issue. This code is corrected in the upcoming 2.0.3 release. I have one more person having issues I'm waiting to hear back from.

    is it possible to have the sites backed up to all 3 options (local, amazon, dropbox) within just 1 snapshot?

    Not currently possible. Would probably be easier to setup something external to Snapshot to just replicate the snapshot backup folder to all three or more systems. For example I know there are already a few plugins that will copy your media to Amazon S3.

    for future.. would be nice if on pro-sites module if you can select to auto backup the site and choose destination and frequency when creating the pro-sites plan.

    This is actually upcoming. We are still discussing things internal about how to best implement ProSites support. One idea is since we currently do not offer backups at the blog level we make this a ProSite option. So if the blog is at a ProSite level they can run their own backups. Still this would be data and media only. A blog would still not be able to backup themes or plugins or other core items.

    What I don't see is an automated way for the program to add new snapshots all by itself when new blogs are added.

    Agreed. This is one of the most featured options. And will be in the next non-bug fix release soon after 2.0.3. The concept would be the super admin defined a default options under Snapshot > Settings. So all new blogs created would automatically get snapshot setups created. Still not sure on the details. But that is the general plan. And we agree that having to continue adding snapshot setups for new blogs would be time consuming.

  • shawng

    @Paul
    Wow, this is exactly why I love being a member here. You guys are already 2 steps ahead of my best ideas. Somehow I knew that because you guys already run one of the biggest WordPress networks online that you would know what I need even before I do :slight_smile:

    If you need to do any multi-db testing on the new snapshots, or anything else, just let me know and go ahead, jump in and go for it.

    I will be setting up a staging site as well, so we can do any testing necessary on multi-db stuff without effecting my live site.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.