This page describes how to apply long-running schema changes in Vitess/MySQL without disrupting ongoing operations. Examples for long-running changes on large databases are ALTER TABLE
(for example to add a column), OPTIMIZE TABLE
or large-scale data changes (e.g. populating a column or clearing out values).
If a schema change is not long-running, please use the simpler vtctl ApplySchema instead.
One solution to realize such long-running schema changes is to use a temporary table and keep it in sync with triggers as originally proposed by Shlomi and further refined by others (Percona's pt-online-schema-change, Square's Shift).
Here we describe an alternative solution which uses a combination of MySQL's statement based replication and backups to apply the changes to all tablets. Since the long-running schema changes are applied to an offline tablet, ongoing operations are not affected. Internally within Google this process is dubbed pivot and therefore we refer to it by this name throughout the document.
This tutorial outlines the necessary manual steps for a pivot and is based on the Vitess Kubernetes Getting Started Guide. Eventually, we plan to provide an integrated solution within Vitess which will automate the steps for you.
At the high level, a pivot comprises the following phases:
You may be wondering: Why does this work?
The key here is that the new schema is backward compatible with respect to statements sent by the app. The replication stream remains backward compatible as well because we use statement based replication. As a consequence, the new schema must not be used until it has been changed on all tablets. If the schema would have been used e.g. when an insert uses a new column, replication would break on tablets which have the old schema. Pivoting all tablets first ensures this doesn't happen.
Also note that the changes are applied to only one tablet and then all other tablets are restored from the backup. This is more efficient than applying the long-running changes on every single tablet.
Now let's carry out an actual pivot based on our Guestbook example schema. We'll add a column to it.
We assume that you have followed the Vitess Kubernetes Getting Started Guide up to and including the step "9. Create a table".
Furthermore, we assume that the tablet with the ID 100 is the current master.
Note: The example uses the vtctl ExecuteFetchAsDba
command to read rows for demonstration purposes only. It is not recommended for daily operations since queries are executed with SUPER rights and e.g. can insert data on a read-only slave.
Throughout the tutorial many steps are marked as "optional" or meant for verification only (e.g. looking at the GTIDs with vtctl ShardReplicationPositions
). They are not relevant for the pivot process. However, they help to explain what is happening under the hood e.g. that a tablet did catch up to the latest GTID.
Initially, the database will be empty. Let's insert one row. Let's also compare the executed GTIDs before and after the insert.
vitess/examples/kubernetes$ ./kvtctl.sh ShardReplicationPositions test_keyspace/0
Starting port forwarding to vtctld...
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-7 0
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-7 0
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-7 0
test-0000000101 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-7 0
test-0000000100 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-7 0
Before the insert, the highest executed GTID is 7.
Insert a row:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000100 "INSERT INTO messages (page, time_created_ns, message) VALUES (1, UNIX_TIMESTAMP(now()), 'before pivot')"
Starting port forwarding to vtctld...
+
+
Verify that it's there:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000104 "SELECT * FROM messages"
Starting port forwarding to vtctld...
+------+-----------------+--------------+
| page | time_created_ns | message |
+------+-----------------+--------------+
| 1 |<PHONE_NUMBER> | before pivot |
+------+-----------------+--------------+
Check the highest executed GTID:
vitess/examples/kubernetes$ ./kvtctl.sh ShardReplicationPositions test_keyspace/0
Starting port forwarding to vtctld...
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-8 0
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-8 0
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-8 0
test-0000000101 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-8 0
test-0000000100 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-8 0
The GTID increased by one from 7 to 8 and all replicas catched up to it.
Let's take the rdonly tablet with the ID 104 offline and apply the changes there:
vitess/examples/kubernetes$ ./kvtctl.sh StopSlave test-0000000104
Starting port forwarding to vtctld...
Note: If a vtctl command does not produce any output (like StopSlave
), it means that it succeeded.
Verify that replication is turned off:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000104 "SELECT SERVICE_STATE FROM performance_schema.replication_connection_status;"
Starting port forwarding to vtctld...
+---------------+
| SERVICE_STATE |
+---------------+
| OFF |
+---------------+
OFF
means the Slave IO thread has been stopped. The Slave SQL thread should have been turned off as well. (Replace connection
with applier
in the command above if you want to verify it.)
Now let's simulate that the application continues to make changes to the database while we change the schema.
Insert a second row on the master (ID 100). The offline tablet won't see this row:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000100 "INSERT INTO messages (page, time_created_ns, message) VALUES (2, UNIX_TIMESTAMP(now()), '104 replication stopped')"
Starting port forwarding to vtctld...
+
+
The change has been propagated to an online rdonly tablet (ID 103):
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000103 "SELECT * FROM messages"
Starting port forwarding to vtctld...
+------+-----------------+-------------------------+
| page | time_created_ns | message |
+------+-----------------+-------------------------+
| 1 |<PHONE_NUMBER> | before pivot |
| 2 |<PHONE_NUMBER> | 104 replication stopped |
+------+-----------------+-------------------------+
Our offline rdonly tablet (ID 104) doesn't receive it as we turned replication off:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000104 "SELECT * FROM messages"
Starting port forwarding to vtctld...
+------+-----------------+--------------+
| page | time_created_ns | message |
+------+-----------------+--------------+
| 1 |<PHONE_NUMBER> | before pivot |
+------+-----------------+--------------+
We can also see that when we look at the executed GTIDs of all tablets:
vitess/examples/kubernetes$ ./kvtctl.sh ShardReplicationPositions test_keyspace/0
Starting port forwarding to vtctld...
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-8 0
test-0000000101 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000100 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
Note that the tablet with the ID 104 is lagging behind by one transaction now (8 instead of 9) because we stopped replication on it.
Apply a schema change on the rdonly tablet. We'll add the column views
to the messages
table.
Since the tablet is a slave and read-only, we will have to use ExecuteFetchAsDba
to execute the SQL statement with SUPER rights.
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba -disable_binlogs test-0000000104 "ALTER TABLE messages ADD views BIGINT(20) UNSIGNED NULL"
Starting port forwarding to vtctld...
+
+
Let's check the highest GTID on each tablet.
vitess/examples/kubernetes$ ./kvtctl.sh ShardReplicationPositions test_keyspace/0
Starting port forwarding to vtctld...
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-8 0
test-0000000101 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000100 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
During the pivot it's important that the schema change won't be added to the binlogs. Therefore, we ran ExecuteFetchAsDba with the -disable_binlogs
flags. If we don't skip the binlogs, we would create an alternate future on the offline tablet.
You can see that the schema change DDL was not added to the binlogs because the GTID did not increase on tablet 104 (it stayed at 8).
Verify that the schema has been changed:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000104 "SHOW COLUMNS FROM messages"
Starting port forwarding to vtctld...
+-----------------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+---------------------+------+-----+---------+-------+
| page | bigint(20) unsigned | NO | PRI | | |
| time_created_ns | bigint(20) unsigned | NO | PRI | | |
| message | varchar(10000) | YES | | | |
| views | bigint(20) unsigned | YES | | | |
+-----------------+---------------------+------+-----+---------+-------+
Before we create the backup, we'll restart replication first and let the tablet catch up. This way, we minimize the number of new ongoing writes which won't be in the backup and have to be applied after the restore.
vitess/examples/kubernetes$ ./kvtctl.sh StartSlave test-0000000104
Starting port forwarding to vtctld...
Verify that replication is running again:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000104 "SELECT SERVICE_STATE FROM performance_schema.replication_connection_status;"
Starting port forwarding to vtctld...
+---------------+
| SERVICE_STATE |
+---------------+
| ON |
+---------------+
Once tablet 104 has caught up, it should include the second row as well:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000104 "SELECT * FROM messages"
Starting port forwarding to vtctld...
+------+-----------------+-------------------------+-------+
| page | time_created_ns | message | views |
+------+-----------------+-------------------------+-------+
| 1 |<PHONE_NUMBER> | before pivot | |
| 2 |<PHONE_NUMBER> | 104 replication stopped | |
+------+-----------------+-------------------------+-------+
Note it includes our newly added column views
and the second row as well.
When we check the executed GTIDs, we also see that tablet 104 has caught up:
vitess/examples/kubernetes$ ./kvtctl.sh ShardReplicationPositions test_keyspace/0
Starting port forwarding to vtctld...
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000101 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
test-0000000100 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9 0
Now we'll create a backup of the tablet which has the schema change and restore the other tablets from this backup:
vitess/examples/kubernetes$ ./kvtctl.sh Backup test-0000000104
Starting port forwarding to vtctld...
When the command returns, the backup will be available:
vitess/examples/kubernetes$ ./kvtctl.sh ListBackups test_keyspace/0
Starting port forwarding to vtctld...
2016-05-27.001231.test-0000000104
We restore the tablets from the backup by restarting them. Since the Kubernetes pods lose their state after a shutdown, they'll always restore from the latest backup and then connect to the master to catch up on changes which were made after the backup was taken.
vitess/examples/kubernetes$ kubectl delete pod vttablet-103
pod "vttablet-103" deleted
Note that the shutdown will take several seconds. While it's shutting down, Kubernetes tracks its state as Terminating
:
vitess/examples/kubernetes$ kubectl get pods
...
vttablet-103 2/2 Terminating 1 18m
...
Once it's gone, you can restart it:
vitess/examples/kubernetes$ TASKS=3 ./vttablet-up.sh
Creating test_keyspace.shard-0 pods in cell test...
Creating pod for tablet test-0000000103...
pod "vttablet-103" created
The restore from backup will take several seconds. While a tablet is restoring, Vitess tracks its state as restore
:
vitess/examples/kubernetes$ ./kvtctl.sh ListAllTablets test
Starting port forwarding to vtctld...
...
test-0000000103 test_keyspace 0 restore <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
...
Eventually, you can query the restarted tablet and check if it has the added column as well.
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000103 "SELECT * FROM messages"
Starting port forwarding to vtctld...
+------+-----------------+-------------------------+-------+
| page | time_created_ns | message | views |
+------+-----------------+-------------------------+-------+
| 1 |<PHONE_NUMBER> | before pivot | |
| 2 |<PHONE_NUMBER> | 104 replication stopped | |
+------+-----------------+-------------------------+-------+
Now repeat the process for the remaining two replica tablets:
vitess/examples/kubernetes$ kubectl delete pod vttablet-102
vitess/examples/kubernetes$ TASKS=2 ./vttablet-up.sh
vitess/examples/kubernetes$ kubectl delete pod vttablet-101
vitess/examples/kubernetes$ TASKS=1 ./vttablet-up.sh
We recommend to restart at most one or two tablets simultaneously to not impact the overall availability of the system. (For example, be aware that an emergency failover of the master might happen during the restarts.)
To recap: tablet 100 is the current master and was not restored yet. All other tablets have already been restored. You can verify this with the ListAllTablets
command:
vitess/examples/kubernetes$ ./kvtctl.sh ListAllTablets test
Starting port forwarding to vtctld...
test-0000000100 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000101 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
To restore tablet 100 as well, we'll failover the master to tablet 101 first:
vitess/examples/kubernetes$ ./kvtctl.sh PlannedReparentShard test_keyspace/0 test-0000000101
Starting port forwarding to vtctld...
ListAllTablets
will show that tablet 101 is the new master.
vitess/examples/kubernetes$ ./kvtctl.sh ListAllTablets test
Starting port forwarding to vtctld...
test-0000000100 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000101 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 []
When we check the GTIDs, we can see that the highest GTID for the new master is 3:
vitess/examples/kubernetes$ ./kvtctl.sh ShardReplicationPositions test_keyspace/0
Starting port forwarding to vtctld...
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9,c3de87c6-239a-11e6-a20e-02420a400006:1-3 0
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9,c3de87c6-239a-11e6-a20e-02420a400006:1-3 0
test-0000000100 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9,c3de87c6-239a-11e6-a20e-02420a400006:1-3 0
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9,c3de87c6-239a-11e6-a20e-02420a400006:1-3 0
test-0000000101 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/c2f5cc53-239a-11e6-a17b-02420a400405:1-9,c3de87c6-239a-11e6-a20e-02420a400006:1-3 0
You see that the list of GTIDs has one more entry because the master has changed.
Note: There is currently a known issue that a vttablet does not properly restore from a backup when a reparent happened in the meantime. To work around the issue, you'll have to create a new backup after the reparent to the new master.
vitess/examples/kubernetes$ ./kvtctl.sh Backup test-0000000104
Starting port forwarding to vtctld...
Now restart the old master:
vitess/examples/kubernetes$ kubectl delete pod vttablet-100
vitess/examples/kubernetes$ TASKS=0 ./vttablet-up.sh
Once the old master restored, all tablets have been changed to the new schema and we can start using it.
At this point, you can change your application to use the new schema. We simulate this by inserting a third row which references the newly added column views
:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000101 "INSERT INTO messages (page, time_created_ns, message, views) VALUES (3, UNIX_TIMESTAMP(now()), 'after pivot', 301)"
Starting port forwarding to vtctld...
+
+
The row will be replicated to all tablets e.g. the old master:
vitess/examples/kubernetes$ ./kvtctl.sh ExecuteFetchAsDba test-0000000100 "SELECT * FROM messages"
Starting port forwarding to vtctld...
+------+-----------------+-------------------------+-------+
| page | time_created_ns | message | views |
+------+-----------------+-------------------------+-------+
| 1 |<PHONE_NUMBER> | before pivot | |
| 2 |<PHONE_NUMBER> | 104 replication stopped | |
| 3 |<PHONE_NUMBER> | after pivot | 301 |
+------+-----------------+-------------------------+-------+
The highest executed GTID was increased accordingly on all tablets from 3 to 4:
vitess/examples/kubernetes$ ./kvtctl.sh ShardReplicationPositions test_keyspace/0
Starting port forwarding to vtctld...
test-0000000104 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/5347b3ed-2850-11e6-92a9-02420a400405:1-9,f20c5e25-2851-11e6-bb74-02420a400006:1-4 0
test-0000000103 test_keyspace 0 rdonly <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/5347b3ed-2850-11e6-92a9-02420a400405:1-9,f20c5e25-2851-11e6-bb74-02420a400006:1-4 0
test-0000000102 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/5347b3ed-2850-11e6-92a9-02420a400405:1-9,f20c5e25-2851-11e6-bb74-02420a400006:1-4 0
test-0000000100 test_keyspace 0 replica <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/5347b3ed-2850-11e6-92a9-02420a400405:1-9,f20c5e25-2851-11e6-bb74-02420a400006:1-4 0
test-0000000101 test_keyspace 0 master <IP_ADDRESS>:15002 <IP_ADDRESS>:3306 [] MySQL56/5347b3ed-2850-11e6-92a9-02420a400405:1-9,f20c5e25-2851-11e6-bb74-02420a400006:1-4 0


Click the play button to listen to one kind of holiday music!
Click the play button to listen to one kind of chill music!
Click the play button to listen to one of gaming music!
First gaming:


A college basketball coach bought $1,000 worth of beer for fans at a local bar to celebrate a rivalry win, and he had his 6-year-old son pay the tab with a wad of cash
by Meredith Cash, Business Insider US- Xavier Musketeers head coach Travis Steele bought fans $1,000 worth of beer at a local bar after his team beat the Cincinnati Bearcats in the Crosstown Shootout Saturday night.
- Steele brought his six-year-old son, Winston, to Dana Gardens and had the baby-faced baller place a wad of cash on the bar.
- Before announcing his gift to the bar’s patrons, Steele thanked fans for supporting the team.
- Xavier has started the season with a 9-1 record and is primed to be a serious contender in a stacked Big East conference.
- Visit Business Insider’s homepage for more.
Victory over an archrival tastes pretty sweet, but celebrating with a free post-win beer tastes much, much sweeter.
Xavier Musketeers head coach Travis Steele bought $1,000 worth of beer for fans at a local bar after his team took down the Cincinnati Bearcats 73-66 in Saturday’s Crosstown Shootout.
Steele and his six-year-old son, Winston, arrived at Dana Gardens – a bar located just off of Xavier’s campus – mere hours after the big win. The young, blond-haired baller walked into the bustling joint with his dad as fans whooped and applauded before placing a hulking stack of cash on the bar.
“I’m going to buy everyone $1,000 worth of drinks,” the elder Steele told two of the bartenders on hand, who were visibly shocked. They then thanked the head coach and shook his hand.
Steele then addressed the patrons of the bar.
“Thank you guys for coming to the game. We appreciate all the support,” he said. “I’ve got a thousand dollars up here for all the next drinks.”
Applause erupted across the bar and drowned out whatever Steele said next.
A second-year head coach, Steele has led the Musketeers to an impressive 9-1 start to the 2019-2020 season that includes wins over Cincinnati and the UConn Huskies and a close loss against a loaded Florida Gators roster.
Xavier figures to be a serious contender atop a stacked Big East conference this season. Steele’s squad opens conference play with a tough road test against the No. 23 Villanova Wildcats just before the end of the year.
- Read more:
- The 13 most memorable college basketball teams of the decade
- UConn’s top recruit dropped a jaw-dropping dime that shows why she’s primed to be one of the next big stars in college basketball
- Megan Rapinoe calls out Lionel Messi, Cristiano Ronaldo, and Zlatan Ibrahimovic to do more to fight racism and sexism
- Clemson head coach Dabo Swinney fired back after Paul Finebaum called him ‘the most annoying winner in all of sports’


Offers organizations a platform to run silent auctions as fundraising events.
The app allows designated users for organizations to set up silent auctions, control starting bid amounts, and time available to accept bids.
We are online!!
what a great feeling to know your money is going to help others.
we all wish we had more time but the truth of the matter is we dont. so we have made setting up a account easy so you can get that item online up for auction fast so you can get back to your bussy life.


Now that you have the tools you need to build a culture of appreciation, it's time get started. It's not always easy to come up with creative ways to recognize and reward your teammates for their great work, so here is a list of unique examples that can help.
From development point of view it is a standard Web Application that you can access from your browser. It can be integrated within the organization's network and could be accessed only in organization's network. The whole idea is based on the fact that people need to be encouraged if they are doing their work correctly. The tool is used to vote for a person whenever an employee wants. Different categories could be selected when voting for employee(work related or not). The winner could be given some kind of incentive or just a small present. A future idea might be the opposite implementation - people giving negative votes for a colleague like - lazy person, not doing his job.. etc. If you think you like the idea please contact us for a free consulting session.
If you really like the product we can send you a consultant who can install, integrate and bootstrap the application in your work environment. The data entered in is absolutely private will not be used for any kind of further processing.


|
Panda3D
|
Public Member Functions | |
| __init__ () | |
| __init__ (const LColor head, const LColor tail, BaseParticleRenderer::ParticleRendererAlphaMode alpha_mode) | |
| __init__ (const LineParticleRenderer copy) | |
| const LColor | getHeadColor () |
| float | getLineScaleFactor () |
| accessor More... | |
| const LColor | getTailColor () |
| setHeadColor (const LColor c) | |
| setLineScaleFactor (float sf) | |
| accessor More... | |
| setTailColor (const LColor c) | |
| Public Member Functions inherited from BaseParticleRenderer | |
| BaseParticleRenderer::ParticleRendererAlphaMode | getAlphaMode () |
| bool | getIgnoreScale () |
| Returns the "ignore scale" flag. More... | |
| GeomNode | getRenderNode () |
| Query the geomnode pointer. More... | |
| NodePath | getRenderNodePath () |
| Query the geomnode pointer. More... | |
| float | getUserAlpha () |
| gets alpha for "user" alpha mode More... | |
| output (Ostream out) | |
| Write a string representation of this instance to <out>. More... | |
| setAlphaMode (BaseParticleRenderer::ParticleRendererAlphaMode am) | |
| setColorBlendMode (ColorBlendAttrib::Mode bm, ColorBlendAttrib::Operand oa, ColorBlendAttrib::Operand ob) | |
| sets the ColorBlendAttrib on the _render_node More... | |
| setIgnoreScale (bool ignore_scale) | |
| Sets the "ignore scale" flag. More... | |
| setUserAlpha (float ua) | |
| sets alpha for "user" alpha mode More... | |
| write (Ostream out, int indent) | |
| Write a string representation of this instance to <out>. More... | |
| Public Member Functions inherited from ReferenceCount | |
| int | getRefCount () |
| Returns the current reference count. More... | |
| ref () | |
| Explicitly increments the reference count. More... | |
| bool | testRefCountIntegrity () |
| Does some easy checks to make sure that the reference count isn't completely bogus. More... | |
| bool | testRefCountNonzero () |
| Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More... | |
| bool | unref () |
| Explicitly decrements the reference count. More... | |
Additional Inherited Members | |
| Public Types inherited from BaseParticleRenderer | |
| enum | ParticleRendererAlphaMode { PR_ALPHA_NONE = 0, PR_ALPHA_OUT = 1, PR_ALPHA_IN = 2, PR_ALPHA_IN_OUT = 3, PR_ALPHA_USER = 4, PR_NOT_INITIALIZED_YET = 5 } |
| enum | ParticleRendererBlendMethod { PP_NO_BLEND = 0, PP_BLEND_LINEAR = 1, PP_BLEND_CUBIC = 2 } |
| Static Public Member Functions inherited from ReferenceCount | |
| static TypeHandle | getClassType () |
| Public Attributes inherited from ReferenceCount | |
| int | ref_count |
| The current reference count. More... | |
| __init__ | ( | ) |
| __init__ | ( | const LColor | head, |
| const LColor | tail, | ||
| BaseParticleRenderer::ParticleRendererAlphaMode | alpha_mode | ||
| ) |
| __init__ | ( | const LineParticleRenderer | copy | ) |
| const LColor getHeadColor | ( | ) |
| float getLineScaleFactor | ( | ) |
accessor
| const LColor getTailColor | ( | ) |
| setHeadColor | ( | const LColor | c | ) |
| setLineScaleFactor | ( | float | sf | ) |
accessor
| setTailColor | ( | const LColor | c | ) |


CDBTech, LLC
About
Services
Work
Testimonials
FAQ
Contact
Menu
Thank you for your submission.
I’ll send over next steps shortly.


Posted by Carlos Alfonzo on Febuary 8th, 2019
Posted by Carlos Alfonzo on November 8th, 2017
Posted by Carlos Alfonzo on August 29, 2017
Posted by Carlos Alfonzo on August 13, 2017


| Package | Description |
|---|---|
| com.github.thorbenkuck.netcom2.annotations |
This package contains all non-rmi annotations.
|
| com.github.thorbenkuck.netcom2.annotations.processors | |
| com.github.thorbenkuck.netcom2.annotations.rmi |
This package contains all Annotations associated with the advanced RMI API from NetCom2.
|
| com.github.thorbenkuck.netcom2.exceptions |
This package contains all Exceptions that may be thrown at different times within NetCom2.
|
| com.github.thorbenkuck.netcom2.interfaces |
This package contains some interfaces, that are unique to NetCom2, but not to any sub-package
So, for example, some of those interface define a bridge between 2 decoupled parts, some expanded interface of the
function package, such as TriConsumer or TriPredicate ,
which all may be used freely outside of NetCom2. |
| com.github.thorbenkuck.netcom2.logging |
This package contains the NetCom2 logging API, which is used in all other modules within NetCom2.
|
| com.github.thorbenkuck.netcom2.network.client |
This package contains all the relevant classes for the Client.
|
| com.github.thorbenkuck.netcom2.network.interfaces |
This package contains interfaces, that are relevant for both the server and the client package.
|
| com.github.thorbenkuck.netcom2.network.server |
This package contains all the relevant classes for the Server.
|
| com.github.thorbenkuck.netcom2.network.shared | |
| com.github.thorbenkuck.netcom2.network.shared.cache |
This package contains multiple interfaces and Objects, regarding an low-level-cache.
|
| com.github.thorbenkuck.netcom2.network.shared.clients |
This is the core package for Communication.
|
| com.github.thorbenkuck.netcom2.network.shared.comm |
This Package is associated with the Communication between the ClientStart and the ServerStart.
|
| com.github.thorbenkuck.netcom2.network.shared.comm.model |
This package contains all Data-Objects, used within NetCom2.
|
| com.github.thorbenkuck.netcom2.network.shared.heartbeat | |
| com.github.thorbenkuck.netcom2.network.synchronization | |
| com.github.thorbenkuck.netcom2.pipeline | |
| com.github.thorbenkuck.netcom2.utility |
Copyright © 2018. All rights reserved.


Los Angeles faces Boston, looks for 5th straight home win
by The Associated PressBoston Celtics (11-2, first in the Eastern Conference) vs. Los Angeles Clippers (9-5, fourth in the Western Conference)
Los Angeles; Wednesday, 10 p.m. EST
Los Angeles comes into a matchup against Boston as winners of four home games in a row.
Los Angeles finished 48-34 overall with a 26-15 record at home in the 2018-19 season. The Clippers averaged 115.1 points per game while allowing opponents to score 114.3 last season.
Boston finished 35-17 in Eastern Conference action and 21-20 on the road in the 2018-19 season. The Celtics averaged 112.4 points per game while allowing opponents to score 108.0 last season.
The matchup Wednesday is the first meeting of the season between the two teams.
Clippers Injuries: Landry Shamet: out (ankle), Kawhi Leonard: day to day (knee).
Celtics Injuries: Marcus Smart: day to day (sprained right ankle), Gordon Hayward: out (left hand).
___
The Associated Press created this story using technology provided by Data Skrive and data from Sportradar.


Defines whether to print calculation progress to screen.
int jmpSetScreenOutput (int booleanFlag);
booleanFlag [input]
Integer that specifies whether status information should be printed to screen as a calculation progresses. Possible values are JMP_FLAG_TRUE
or JMP_FLAG_FALSE
, respectively to turn the display mode on or off.
JMP_STATUS_OK |
Request has been successfully completed. |
JMP_STATUS_ERROR |
An error has occurred. |
JMP_FLAG_FALSE
only cancels normal output. Error and warning messages will always be displayed.| Header | jmpcore.h |
| Library | jmpcore.lib /jmpcore_x64.lib |
| DLL | jmpcore.dll /jmpcore_x64.dll |


CN conductors’ union gives 72-hour strike notice as talks continue - Barriere Star Journal
by The Canadian PressA strike could begin at 12:01 a.m. on Nov. 19 now that the notice has been provided
Canadian National Railways conductors, trainpersons and yardpersons have given strike notice ahead of a Tuesday deadline.
The union, which represents 3,200 workers, provided the 72-hour notice today as contract negotiations continue over the weekend.
The Teamsters Canada Rail Conference warned in October it was prepared to launch job action after over six months of unsuccessful talks.
A strike could begin at 12:01 a.m. on Nov. 19 now that the notice has been provided.
The company says its offer to enter into binding arbitration was declined by the union.
The workers, who are mostly located in major urban centres across Canada, have been without a contract since July 23.
The Canadian Press


---
layout: post
title: 99.99% available ASP.NET and SQL Server Architecture
date: 2008-12-16 13:46:00.000000000 +11:00
comments: true
categories:
- development
- pc
- software
- architecture
---
I'll summarise a very nice
article here:
- Always use public firewall and:
- only expose 80, 443 ports;
- do not open FTP;
- do not open file sharing ports;
- Use two Ethernet ports: one for to serve external requests, one for local access.

- Each router and firewall has a standby one.
- Get moderately powerful Web servers with enough storage.
- Run 64bit version of Windows.
- The whole internal network is fully 1Gbit (network cables, routers/switches, NICs etc).
- Only use VPN to access your server.
- Database servers must be the most powerful (RAID 10 Disks, Memory, CPU).
- Store Database files on a separate physical disk.
- Always perform backup and log shipping to different physical disks, preferably on RAID 1.
- Use Windows Clustering for high availability with Storage Area Network.
- RAM, lots of RAM for Database servers (2 GB + 60% of MDF size).
- Get Dual Path Fiber Channel connection to SAN from your servers.
- Have a separate server for moving IIS logs from webserver.
- Have a large detachable external storage like External USB drives.
- Use fast SCSI RAID 1 disks.
- Use separate NIC on all servers that is connected to a separate private network via separate switch for bulk operations.
Please keep in mind these suggestions are for really heavy duty web applications.


I live in a j's podcast for monday most wonderful show is keeping up with the jones is jones yes we're back we are for episode one eighty seven.
We're this week we're talking about nothing that's right absolutely nothing as we're exhausted not true we are tired but we're not talking about nothing.
Yes. We thought we haven't been here for two weeks because last week we're away, which we'll talk about in a second.
So it's been a two week break. We're glad to be back in your ear holes.
That sounds weird. That does sound weird.
We're glad to be back in your ears.
We're glad that you're listening to us again after a two week hiatus. How about that? That's better.
And we have this new rule. We haven't talked about this.
We have this new rule where we're getting up at six o'clock in the morning,
which means we need to be in bed by 10.
Yes. And it's now 8.35 when we record this.
And I'm thinking if we record a normal talky talky one,
there's going to be a ton of editing, which means I won't be in bed by 10,
which means I won't be up by six, which means our new game plan of being up super early.
A six super early.
No, that's probably not super early for a lot of people, but we're not particularly
morning people.
So six feels pretty early to me.
Your chef, I'm loving getting up at six.
OK, I feel like speak for you, darling.
I feel like getting up early is my superpower.
I remember I used to have a job when I was like thirteen thirteen years old I had a job where I would get up I think.
Maybe around five in the morning and I'd go open a paper shop at like sometime between five thirteen six is the one where you eight candy all day long all day long.
I would just work down the left side of the candy store and this is leaving.
I'd work down the other side, but I used to love it.
I mean, I would either cycle to work or walk to work or when it got snowy,
my boss had come and put me up.
But being awake at five o'clock in the morning, five thirty and walking around
the neighborhood, I felt like I had a superpower.
I was up before anybody else and it gave me a great start in the day.
By the end of the night, not so good.
But first thing in the morning, I love it.
I'm really enjoying being up early.
Oh, good.
I have a technical question for you before we go into our catch up of two weeks.
Go for it.
What's your technical question?
Should the microphone be sending little shocks into my face while I'm speaking on it?

How's it working?
Well, yes, it's keeping me wide awake.
Very good.
Excellent.
Well, it's been two weeks.
The reason we weren't here last week was we were driving back from St.
Louis, where we did a men's weekend and took a bunch of women.
It's true. We did. Yes. It was the first men's weekend or men's retreat that I ever spoke at.
Right. We've been at this church in St. Louis for how many years? Six, seven?
Well, I think yes. I think I've been going for eight now or something like that.
Yeah. And traditionally you've done the women's weekend. I've done the men's weekend.
We've both done the youth retreats, which is funny.  But we want to do our men's weekend
all about women because we just realized our men don't know how to connect with their wives or
their daughters or their girlfriends or their mothers etc etc. But would you and AJ come and
teach it together and we were like yes and then you had a dream that's your cue to speak sorry
I forgot to shock you let me try that again and then you had a dream. Yes I did. And what was the
dream about? Well because we were praying about whether to go and do the retreat just because of
of it being in March and school for the kids and all that kind of stuff.
And by the time we get to March, we're pretty exhausted.
We don't start recovering from the school until late May.
So we were praying about that and I had a dream that in the dream, the Holy Spirit showed
up while we were speaking at the retreat.
So I woke up and I was like, babe, I think we're supposed to go.
I was more thinking that in a dream, we took six people with us, three women and three
men.
Was that in the dream?
Yeah.
three couples. Hey, do you write down your dream? I don't. I have an idea. You should
start writing your dreams. Anyway, because of a dream, we ended up taking six people
with us three women, three men. And I loved it. I think you're right, babe. I think I
did dream that. Yes. That's why I remembered it. I think that impacted me the most about
the dream was that the Holy Spirit had shown up. But anyway, yeah, I was more logistical.
So what I loved on the Saturday night, we had a panel of women answering questions from
men about women.
I heard they just killed it.
I thought it was amazing.
It was really fun.
Yeah, you had had them text in and they could text anonymously whatever questions they had.
And so we answered maybe 10 questions or something like that, which was really fun.
I loved it though.
I love those guys.
Those guys are amazing.
It's such a great church.
Was it funny getting to meet the husbands of the wives that you've missed?
It was so fun.
- So fun.

- And then we got to take our kids with us as well,
which they love it.
- They do.
- Yeah, if we could do more in ministry with our kids,
that would make travel way easier.
- Yeah, it's great to bring them,
'cause then you don't miss them.
They don't feel like they're missing out.
- And they love it.
- I had a big conversation with Tia tonight
as I put her to bed.
She was like, "Daddy, what do you exactly do for a job?"
(laughing)
So she wasn't impressed with the title.
So she said, what does that mean?
What do you actually do on a day-to-day basis?
So I told her and that just made her ask.
She said, how do you know how to speak for so long?
Like she's died listening to you
and you spoke for like over an hour.
How do you know what to say?
And I was like, that's a great question.
I said, I sit and ask the Holy Spirit
and he tells me what to say.
So then she was like, well, how do you hear the Holy Spirit?
What does he sound like?
So I got to teach her how to hear God's voice, which was--
- Oh, that was tonight.
I missed all of that.
- Well, that's 'cause you were downstairs just smoking cigarettes
and drinking cheap beer.
- Hey, I was cleaning the kitchen.
- Oh, sorry.
- So, you know, and then smoking cigarettes,
and I was just kidding.
(laughs)
- So that was one of the things we did.
And then our last week at the school,
we sent out many of our students around the world.
- Yes.
- How many students do we have?
About 70 gone out on outreach?
- Between our small group leaders and the students,
yeah, there's like 73 or 75 or something
that are in seven different locations around the world.
- Yeah, we've got teams in England, Scotland, Canada,
Nashville, Australia, Romania, and South Africa.
- Yeah, amazing.
- If you want a little boost of faith,
if you go to schoolsupernaturallife.org/blog,
you can follow along with them.
You can also find the hashtags if you're on Instagram
to get real-time videos or photos.
But just, I spoke with Pastor Surprise,
I didn't speak to him, he texted me today.
We've got a team in South Africa and he was just saying we've had many miracles, many
salvation's, many healings.
I'm like, I can't wait to hear this.
So good stories.
So, as students, if you happen to be listening to this and you're on outreach, I guess you're
going to your second week.
We love you.
We're super proud of you.
We're praying for you.
We bless you guys.
We pray that you're having an amazing time.
And thank you.
I know that as many people who are listening to podcasts who are hosting our teams, thank
you for doing such a good job.
We're hearing great things from our students about our host family.
So thank you for looking after that.
- It's so fun as well to just follow them on Instagram
and see all the beauty, basically,
that they're encountering in all kinds of different places.
- I think it's funny because every time
somebody from Team Scotland posts,
it's like Zelda in real life.
How did I not have an appreciation
when I lived in Scotland for everyone that looks like Zelda?
- I know.
And I keep looking at, you know,
they're posting on the side of a cliff
and there's another cliff and I'm like, easy.
Just jump off of that, press X X,
your little wind guy comes up,
go over the other clip climate, you're there.
Yeah.
I'm like, yesterday I was playing Zelda.
I came outside and I was waiting for you.
And I was like, hmm, I could just use Revaldi's gale and jump onto my roof to inspect the roof tiles.

Let's just use your drone.
Every once in a while when I see things that are sparkling on the side of the road, I think,
Oh, I should go over and pick that up.
What this happened?
I know.
I know it's bad.
Oh, what?
You beat Clemente Gannon.
You should report.
I think we already told them that I beat Calamity Ganon.
Well, it's worth going through that again.
I did beat Calamity Ganon.
I beat him.
And then this bad guy comes out after him that you didn't know existed and you have to beat him too.
That's right.
We did talk about that.
I can remember you did a spoiler alert.
Sorry.
That's the second time that happened.
Anyway, I'm super proud of you, babe, for doing that.
Thank you.
I also got to speak this morning, which was really fun.
Yeah, you did.
Yeah.
I was really good.
I spoke on the faithfulness of God, which was, well, I thought it was good.
I was really fun.
I think I love anytime when you can remind people of the things that they know to be true about God, but sometimes we forget them.
I also love any time we finish early.
You're welcome.
Yeah, thank you.
You were funny.
We had guests in town and we were taking them out for lunch today and you were like, well, time should I make a reservation for?
I was like, I don't know.
You're speaking.

Thank you.
Thank you.
We also announced our source conference this morning.
We did.
which I had a lot of fun because I was sneaky.
So for those of you who don't know, we run two conferences a year at Grace
Center. We've traditionally had the more conference in the spring and having
declared conference in the fall.
And so I went as far as making artwork for our more 18 conference only to announce
that it had been canceled because we were coming up with the source conference.
This happened maybe a couple of months ago.
We were sitting down and as a senior team, we were praying through what God's
been doing in our church and we're realizing that the presence of God obviously is a key
part of our church. It's the DNA of our church really. And we were looking at all our prophetic
words that we have over our church and how God wants to bring transformation to our city
and we were thinking, "How do we do that?" And so we just started talking about, you know,
one of the things that's important in life is understanding what you've got so you know
what you can give away. And I think it's all too easy to just think that what you have
is normal and that's not true, you're unique, you're brilliant. And that goes for churches
Every church is unique.
Every church has a part of the thumbprint of God on them.
And it's only when you recognize what you have
that you can understand what you can give away.
So for Grace Center, we're realizing, man,
we really value the presence of God
and the presence of God is unto something.
- Yeah.
- So we just started asking ourselves,
what would it look like to raise our families
with a value in the presence of God?
Or what would it look like if businesses were led
by the presence of God or leaders were inspired
lead via the presence. And we realized we're just talking about living life in the presence
of God. And so we're just genius idea, which was all Holy Spirit. We're just, I remember
we're at Jeff and Becky's house, weren't we?
Yeah. We're all just sort of brainstorming over lunch.
Sitting around their gorgeous dining room table. And before you know it, we came up with this
conference that we think is going to be amazing. We've asked all the speakers that the conference
are going to be from Grace Center. They're all Grace Center members, only a handful of them are
on staff, the rest are church members who are experts in their respective fields, but
they love the presence of God.
And we have four tracks at this conference.
So you can come and learn about, you know, marriage and kids, aka family life in the
presence of God, business.
We've got some key leaders in business who are going to be talking about their journey
through their careers accompanied by the presence of God.
We've got some experts in our church who are going to be talking to us about living
a life fueled by the Holy Spirit, let's health and organization. And then lastly, we've got
a track on leadership, both for church leadership and for business leadership. And so the idea
is you come, you do one of those tracks, you get copies of all the other tracks that are happening.
It's all bathed in the incredible worship that we so love at Grey Center. And we're excited. We'd
love you to come as well. It's May 18th to 19th. It's a weekend before the Memorial Day weekend,
if you were an American and you know what that means. And the reason we're telling you about it
now is we have a sale on 48 hours. The tickets are going to be $48. And after Tuesday, Elan's time,
it goes up to $60 pre-registration, $80 at the door. So with Love You Come, we think it's going to be
an incredible weekend. It's going to be these workshop sessions, 30 minutes talking, 45 minute
Q&A with the audience. And we're really excited to just start giving away some of what the
Lord's deposited in our midst. And we couldn't be more excited to host our region.
So I think it's going to be amazing. Come on. Yep. What else happened, baby? You want to
see Black Panther? I did. I want to see Black Panther. I thought it was
good. I think I'd heard so many people that were like, "Oh my gosh, it's the best one yet,
blah, blah, blah." And I really like the Avengers ones better, you know, where there's a whole bunch
into the characters rather than just one, but it was good.
Yeah.
And then this week they dropped the new Avengers,
speaking of Avengers trailer for, it's coming up quick.
Isn't it in April? It gets released?
I don't know. I haven't.
I'm so excited.
I haven't witnessed that, but I do know that the Han Solo movie is coming up in the spring as well.
Do nothing for me.
Well, you know what? Get over it because you're going to go see it.
Little insight into our marriage right there.
We're going to put on our Star Wars outfits.
You can do your hair like Princess Leia and off we go.
Sorry.
Don't talk to me about your Leia outfit.
All right.
Like we said, we don't have a topic for this week because we're trying to get to
bed early, but we do have two listeners questions.
The first one is from Jill.
Jill asked this question.
She says, I've reason to be going through healing prayer training with a group
from my church using the Kilsra's book.
This is me jumping in here as Alan.
The Kilsra's book she's referring to is Chester and Betsy Kilsra's book
on inner healing, they're amazing inner healing experts and dear friends of ours.
Jill continues, "I typically don't like to give the enemy credit for things or even
really talk about him because I just don't care about what he's doing. I've heard you talk about
not having faith for counter attack and I know you never put much emphasis on what the enemy does
because God is bigger. I'm not trying to walk around with my head in the sand. Obviously,
we need to be prepared to an extent. But all this talk about the enemy and going through this
training has made me uncomfortable. I guess it would be curious to hear you talk a little
more about your perspective on spiritual warfare and the enemy and inner healing.
Thanks.
Great question, Jill. We did a whole episode on this actually, which is episode 41. So it
would be alanah.com/41 if you wanted to have a listen to that because it goes into a whole
bunch more detail, but basically our approach is not to be impressed by the devil, essentially.
We've met so many people who have a very big devil and a very small God, and they seem
like they're only content to believe that they're doing something good for God if they're
being harassed by the enemy.
We think that fruit demonstrates fruitfulness, not warfare.
And to be clear, Jill, that's not what we think you're saying.
We think you're probably in a similar camp to where we're at.
you may have already listened to Episode 41, but you know, when it comes to the whole
topic of inner healing, I get uncomfortable and I have a very, very small view of what
the devil's up to.
But when I have to prepare because I'm doing research or teaching on some deliverance stuff,
for example, or if I'm teaching about some aspects of inner healing and I'm listening
to people's testimonies, or more recently, we've been looking at some specific aspects
of warfare.
It gets me really uncomfortable because I don't like looking at sin.
I get very sad when I understand the depravity of sin and the trauma that it causes people.
I remember the first time I heard your testimony, AJ, I just, I still weep when I hear your
testimony and realize the suffering that you had to endure at the hands of sin.
And so I think some level of uncomfortableness is really, really healthy.
I think where we get into trouble is where we get a really big devil and a really small
god.
I mean, we go into in more detail like AJ said in episode 41, but in summary, my key
verse for all this is first Peter 5.8 where it says, "Be alert and of sober mind your
enemy the devil prowls around like a roaring lion looking for someone to devour."
So it's not that we have our head in the sand and are like, "No, no, no, no, the devil
doesn't exist.
He's not out to attack Christians.
That's not what we're saying.
saying, "Yeah, no, he really does look for people." But the key is found in that verse,
"Who is he looking for? He's looking for somebody who's neither alert nor sober-minded."
I don't know if we told the testimony about one of our people that we were leading.
I don't want to go into it because it's, on the one hand, a really humorous story,
but on the other hand, a really tragic story. But basically, this person got stoned
and had a serious demonic attack and called freaking out when I was like, "Oh, and he's like,
like, if you ever heard anything like this, I'm like, yeah,
why scripture says be sober?
Because when we get drunk, when we get high, when we outsource our faculties,
when we are not alert, when we're not self controlled,
we actually give opportunity for the enemy to harass us.
But I also think, you know, that, that verse is really interesting.
I think there's some truths in there that you'd have to know things about lions
to understand as well.
Like I have a friend who grew up as a missionary in Africa.

And so, you know, this is saying it's prowling around
and roaring, it's looking for an easy pick off.
It's looking for somebody who's unaware
because actually it's probably pretty old
and not able to actually do the things that it says it can.
Right.
So I think that's interesting too.
Yeah, you can seriously minimize the warfare in your life by being sober and being alert.
Yeah.
I think it was David Wagner who said this.
I love this line.
He said, "Before the devil can have a stronghold, he needs a foothold."
Yeah, so good.
And Ephesians 4, 27 just lists some of the things that gives the devil a foothold.
Things like lying, sinning, going to bed angry.
I don't know what, I learned that one as a child.
Don't let the sun go down on your anger.
frustrating when you're married, isn't it?
Well, thankfully we don't get angry that often, but yes.
But when we are, I'm like, and you're like, "Oh, gotta stay awake until we get this started
out."
I'm not repaying this time, but we don't go bad angry.
And then in verse 31, you get the great list, getting rid of things like bitterness, rage,
anger, brawling, slander, all those sorts of things give the devil a foothold.
That's spiritual warfare for a second.
I realize if I read WebMD, I become a hypochondriac.
Yes, you do.
You know what I mean?
You feel like I found a bump.
It's just a zip, babe.
No, but so, you know, I've got that certain disposition where I tend to worry.
And so I remember when I started in my journey of inner healing and deliverance, there's
a danger that you think everything means something.
And you know, it probably does, but it also probably doesn't.
I found being led by the Holy Spirit brings huge peace to me.
But Jill, I don't think you're alone.

And my encouragement is let other people journey you through that for you rather than jump into
conclusions.
I don't know if we've done a good job answering a question, Jill.
I think you know what we mean, but if we didn't do a good job, just contact us and we'll try and
do a better explanation.
All right.
The next one is by Brian.
And Brian asks, "I'm currently experiencing a new level of hunger to learn that I've never
experienced before.
And I finished more books this year already than I have in the past several years combined
and I'm loving it."
That's amazing.
That's amazing.
I'm wondering if you would both share five books apart from the Bible that have had a
really big impact on your life.
Thanks.
So babe, do you want to go first?
I will.
I was, I mean, the easy top, top two books off the top of my head, surprised by the power
of the spirit.
I'm surprised by the voice of God, both by Jack Deere.
The reason they were so impacting for me is I was raised in a cessationist church.
So I was raised in a Bible believing church that taught that the gifts of the spirit were
no longer for today, which made me really, really sad because I was hoping there's going
to be some cool stuff in the kingdom.
And when I began seeing some of the cool stuff in the kingdom, I was worried I was being
deceived.
I was taught that these were counterfeit signs and wonders that the devil was doing this
to deceive the elect.
And when I read, "Surprise by the power of the spirit," I literally could not believe
that there was this brilliant theological treatise, really.
This is a very accessible book written by a very, very intelligent man, Dr. Jack Deere.
He was a professor at a cessationist Bible school, and he talks about his story of meeting John
Wimber in the Vineyard movement and having his whole mind opened to this and basically
talks from scripture about why he used to believe they're no longer for today and how
from scripture they are for today, an incredibly thorough examination of the topic.
And then the subsequent book, "Surprised by the Voice of God," is all about Jack's
journey into understanding the gift of prophecy and dreams and visions and meeting prophets.
And, you know, when I read it, I was just like, "This is like gasoline.
I loved it and I try and make a habit of reading it.
I don't read them every single year, but I do revisit them and I'm always encouraged
when I read them."
So, I'll put links in the show notes for both of those books.
The third book I read, and I'm going back to pivotal moments of my life.
These books I haven't read recently, but The Hidden Power of Prayer and Fasting by
my Hesh Shavda.
Again, just could not believe what I was reading in the pages of this book.
If you want to understand the power of prayer and fasting, if you want to read some testimonies
that you're like, "Wait a minute, I'd highly encourage you to read that book."
In my last two, the Blessed Life by Robert Morris was given to me by our friend Lyle Phillips.
Just as on the one hand the Lord was taking me hand by hand through this journey of understanding
blessing, Lyle comes along, gives me a copy of this book, The Blessed Life by Robert Morris,
Phenomenal Book, an understanding generosity in God's blessing.
It had me face down on the floor several times.
I could not believe what I was reading and it was a huge challenge to me and I loved
it. I'm about to reread it. And then this one is a bit of a cheat because this is a
tome. I have not read this book cover to cover. It is a book called Systematic Theology by
Wayne Grudem. It's designed to be dipped into. So there's chapters on every major theological
principle. And it is such a well written book. Again, it's not inaccessible. Everybody could
read it is written by a theology professor. So you might be thinking, ah, this is just
like high and lofty and I want to understand the terms, but he's done a great job of making
accessible. So there's my five top books off the top of my head.
Wow. I haven't really thought about my five. I mean, off the top of my head, the first one that I
thought of was Grace and Forgiveness, which is by John and Carolina.
I nearly put that on my lips, but I knew you would pick that.
And it's just a really short book, but it's so impactful. And it just gives you some tools
to work through forgiveness and why you're doing it and how to work it through.
I was also thinking about, and this is a book for married couples, but I really like the book
called sheet music.  Sex and things like that? Or some other things that are like sex? Relationship stuff,
You know that kind of stuff, but it is it is literally like he says in the opening of it if if you're not married you can only read chapter one or something like that, you know,
We read it together on honeymoon. We did. Yeah, they're gonna think we're like super nerds or something if I was driving he would read to me.
It was lovely and his Scottish accent was very strong back then so it you know it was it was.
Fine.
It was fine.
Look at that before it was very sick.
I don't have like wearing glasses while you're telling it.
No, we have to pay attention.
Okay, keep going.
Okay.
So that, I thought of that one.
I was super into all the books about revivalists.
So God's Generals was one of the books that I read.
And then John G. Lake, there's one about John G. Lake that is just amazing and just sort
of fills you with faith for the kinds of things that God can do and can use you to do.
So I think those are both fantastic books.
I'm trying to think of something I've read recently.
Needing one more book.
You can't use the ultimate Zelda compendium.
No, definitely not.
Well, I can't even figure out how that thing works.
So I mean, I've looked at it a couple times and I'm like, I don't know.
I guess the last one I would recommend is a book called The Search for Significance.
Now this book is a beast.
Like it's a big book, but it's excellent and it's such a great foundational kind of book
for inner healing and just really learning who you are and who the father is to you and
all that kind of stuff.
At one time it was required reading for people on the ministry team in Toronto.
Yes.
That's why I read it.
That's why I read The Beast.
But it's a big book, but it's great.
All right, Brian, I hope that's helpful for you.
Can I add one more book?
I know I did five.
Sure.
Go for a bonus level.
Just, I tend to read like sort of practical books.
And I would honestly say one of the books that's helped me the most as a parent is a
book called Baby Wise.
So it's actually called On Becoming Baby Wise.
But if you say Baby Wise, you'll be able to find it.
it's excellent and just super helpful in helping new parents or maybe even parents that are
like, "Wow, it was really difficult. The last info was really difficult. I wonder if there's
a different way of doing this." There might be. It's a great book.
There we go. Well, thank you guys for being with us this week. A regular programming will
return next week. If you want tickets for the source conference, again, head over to
the Grace Center dot us slash source. And we look forward to seeing as many of you as
possible can make it. If you want the show notes for this week's episode, head over to
Alan and AJ.com slash 187.


JACK A film review by Steve Rhodes Copyright 1996 Steve Rhodes
RATING (0 TO ****): **
JACK is Francis Ford Coppola's unusual homage to childhood. Writers James DeMonaco and Gary Nadeau borrow an overused plot device, the adult in a child's body, to conjure up the terrors and joys of being ten years old again. Penny Marshall's BIG staring Tom Hanks did this so much better. The script, is so much more intelligent in BIG and the acting there is believable. In fact, if you want to see a excellent show about kids around the preteen age, WELCOME TO THE DOLLHOUSE is still in the theaters and is ten times better than JACK.
In JACK, Karen (Diane Lane) and Brian Powell (Brian Kerwin) have their first baby. Jack (Robin Williams) comes early during a costume ball. Watching Brian get his tin woodsman suit through the metal detector at the hospital is funny. Does your hospital have a metal detector? But I digress. Many of the gags in the show do work. Most however are nothing more than recycled bathroom humor jokes you can find in any low budget kid's movie like PORKY'S.
Soon Karen and Brian find out that their son has cells that are growing at four times the normal rate and that when he is ten, he will have the body, but not the mind or maturity, of a forty year old. The show then jumps to Jack at age forty when he is ready leave his home schooling by Lawrence Woodruff (Bill Cosby) and go to a classroom full of kids his age albeit not his size.
Immediately one of the fatal flaws of the show becomes obvious. Robin Williams does little more than a low key version of his comedy routine. It is so reserved that it is only infrequently funny, but most of all it is not believable. He acts more like he is six, but mainly it is just Robin Williams doing his shtick. I did not buy it for a minute. Having said that, the show manages to be funny some times and poignant others.
We have a sixty pound seven year old with limbs like tornadoes when asleep. When he has a bad dream and jumps in bed with us, it is not easy, but it is nothing compared to the similar episode in JACK.  This scene really worked as did the one where the losers invite Jack to play basketball on their side.
Many of the scenes are sensitive and touching. The best of these is the scene where Jack falls for his teacher and can not understand why she can't be his date to the dance since they are the same size. Gosh, it would be so easy since his mom would be happy to provide transportation.
The best piece of dialog in the picture comes in preparation to the classic essay question. Jack, looking very sad says, "What do I want to be when I grow up? Alive."
Way too much of the show is either gross, in poor taste or both. The boys eat concoctions of worms, spaghetti, toothpaste, you name it. This scene looks like one of those now illegal fraternity hazings.
 They even get Bill Cosby to join in on this "fun" of theirs.
Sometimes sexual relations are treated with respect or in good humor in the show, but usually not. There is a scene in a bar that is in poor taste. Most unbelievable is a scene where one of the kids in Jack's class tells the teacher that he wants to be a gynecologist when he grows up.  Think he gets sent to the principal?
Although this is a sad show with many flaws, it manages to have a life affirming ending. Don't give up on the picture as most of the critics have. It does have it moments.
JACK runs 1:53.  There is very brief nudity but no sex, violence or bad language other than the bathroom humor. The show would be fine for most kids six and up, but I can not figure out the target audience. This was a show we were going to skip, but Jeffrey (age seven) wanted to see it. He gives it one thumbs up, but one thumbs sideways for having kissing in the movie. The sexual references might as well have been in Lithuanian since they went right over his head. I can not bring myself to recommend the picture, but there are some interesting parts. I give it **.
**** = One of the top few films of this or any year. A must see film. *** = Excellent show. Look for it. ** = Average movie. Kind of enjoyable. * = Poor show.  Totally unbearable.
REVIEW WRITTEN ON: August 19, 1996
Opinions expressed are mine and not meant to reflect my employer's.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


WITNESS LIST Intergovernmental Relations Committee March 27, 2001 - 9:00A HB 1747 Registering, but not testifying: For: Bailey, Ken Legislative Director (Texas State Association of Fire Fighters), Austin, TX Campbell, Helen Executive Director (State Fireman's & Fire Marshals' Association), Austin, TX Sandeler, Morris Commissioner (Fire Fighters Pension Commission), Austin, TX HJR 1 Registering, but not testifying: For: Bailey, Ken Legislative Director (Texas State Association of Fire Fighters), Austin, TX Campbell, Helen Executive Director (State Firemen's & Fire Marshals' Association), Austin, TX Sandeler, Morris Commissioner (Fire Fighters Pension Commission), Austin, TX SB 307 Registering, but not testifying: For: Bailey, Ken Leg. Dir. (TX Association of Fire Fighters), Austin, TX Campbell, Helen Executive Director (State Fireman's & Fire Marshals' Ass.), Austin, TX On: Sandaler, Morris Commissioner (Fire Fighter's Pension Commission), Austin, TX Solterman, Susan Policy Analyst (Sunset Advisory Commission), Austin, TX SB 469 FOR: Boriskie, Phil Houston Preofessioanl Firefighters (Houston Professional Firefighters), Houston, TX Rouse, Pete Houston Professional Firefighters (Houston Professioanl Firefighters), Houston, TX Williams, Steven Houston Fire Fighters (Houston Fire Fighters L-341), Houston, TX AGAINST: Connealy, Chris Fire Dept. (City of Houston), Houston, TX Haines, Albert Chief Administrative Officer (City of Houston), Houston, TX Trevino, Hector Fire Fighter Asst Chief (City of Houston), Houston, TX Vara, Lonnie Director of Human Resources (City of Houston), Houston, TX Registering, but not testifying: For: Bailey, Ken Legislative Director (Texas State Association of Fire Fighters), Austin, TX Bornshelter, Jack IBEW (IBEW Local 716), Houston, TX Moreno, T. T San Antonio Professional Firefighters (San Antonio Professional Firefighters Local 624), San Antonio, TX Taylor, Tom E. Dallas Fire Fighters Association (Dallas Fire Fighters Association), Dallas, TX Villarreal, Johnny Houston Fire Fighter (Houston Fire Fighters), Houston, TX On: Campbell, Ken Commissioner Travis County ESD #10 (Travis County ESD #10), Austin, TX Carton, John J. Attorney (Travis County Emergency Services District #2), Austin, TX SB 541 FOR: Bartlett, Larry City Administrator (City of Celina), Celina, TX Peterman, Mark D. Mayor, City of Celina (City of Celina), Celina, TX Registering, but not testifying: For: Cole, Phyllis Collin County Commissioner (Collin County & Conference Urban Counties), Mckinney, TX Cole, Phyllis Collin County Commissioner (Collin County Commissioners Court), McKinney, TX Gay, John E. (City of Celina), Plano, TX Igo, Shanna Representative (Texas Municipal League), Austin, TX Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX SB 542 FOR: Mendez, Mark Assistant County Administrator (Tarrant County Commissioner Court), Ft. Worth, TX Registering, but not testifying: For: Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX SB 630 FOR: Cantwell, John J. Purchasing Director (Dallas County), Dallas, TX Registering, but not testifying: For: Allison, Jim General Counsel (County Judges & Commissioners Association of Texas) Grimes, Cyd V. Travis County (Texas County Purchasing Association), Austin, TX Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX McCown, John Purchasing Agent (T.C.P.A), Houston, TX SB 871 FOR: Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX Registering, but not testifying: For: Allison, Jim General Counsel (County Judges & Commissioners Association of Texas), Austin, TX Grimes, Cyd V. Travis County Purchasing Agent (Texas County Purchasing Association), Austin, TX McCown, Jack Purchasing Agent (Texas County Purchasing Association), Houston, TX Van Gheluwe, Denny Asst Purchasing Agent (Texas City Purchasing Association), Houston, TX Providing written testimony: For: McCown, Jack R. President-Texas County Purchasing Assoc (Texas County Purchasing Association), Houston, TX SB 873 FOR: Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX SB 1061 FOR: Miller, Robert D. Attorney / Chairman of Board (Houston Metro), Houston, TX SB 1073 Registering, but not testifying: For: Claymon, Jennifer Attroney (Palo Pinto Hospital District), Austin, TX SB 1081 Registering, but not testifying: For: Harburger, Jordan Executive Director (Greater Dallas Jewish Community Capitol Campaign), Dallas, TX Humble, Monty Attorney (Greater Dallas Jewish Community Capitol Campaign), Dallas, TX SB 1093 FOR: Barnes, Margaret Denton County Probate Master (Denton County Probate Court Judges), Denton, TX SB 1094 FOR: Barnes, Margaret Denton County Probate Master (Denton County Courts at Law Judges), Denton, TX SB 1147 Registering, but not testifying: For: Allison, Jim General Counsel (County Judges & Commissioners Association of Texas), Austin, TX Cain, Randy Attorney (TX Fire Chiefs Ass.), Austin, TX Carr, Mindy Texas Apartment Association (Texas Apartment Association), Austin, TX Cook, Curtis Jay Assoc of Rural Fire Prevention/Emg Serv (Self), Houston, TX Windisch, Fred Harris County Fire Marshal (Self), Houston, TX SB 1149 FOR: Allison, Jim General Counsel (County Judges & Commissioners Association of Texas), Austin, TX Short, Gene County Commissioner (Self), Sherman, TX AGAINST: Freeman, Bill Justice of the Peace (Justice of the Peace & Constables' Association), Gainesville, TX Ott, Judge Patricia Justice of the Peace (Justices of the Peace & Constables Association of Texas), Round Rock, TX Registering, but not testifying: For: Cole, Phyillis Collin County Commissioner (Collin County Commissioners Court), McKinney, TX Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX Waldrip, Johnny County Commissioner (Self), Sherman, TX Against: Williams, John H. Retired Justice of the Peace (Justice of the Peace & Constable Association of Texas), Robstown, TX SB 1167 FOR: Katz, Howard Attorney (Harris County ESD #9 / Galveston County ESD #1), Houston, TX Registering, but not testifying: For: Campbell, Helen Executive Director (State Fireman's & Fire Marshals' Association), Austin, TX Campbell, Ken Attroney / Commissioner Travis Co. ESD10 (Travis County ESD #10 / Safe - D / Sate Assoc of Fire & Emer Districts Travis Co. ESD#10 / Safe - D), Austin, TX Carlton, John J. Attorney (Texas State Association of Fire & Emergency Districts), Austin, TX Ramsey, Michael R. Attorney (Texas Trial Lawyers Association), Beaumont, TX Windisch, Fred Harris County Fire Marshal (Self), Houston, TX SB 1168 FOR: Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX Registering, but not testifying: For: Krier, Cyndi Taylor Bexar County Judge (Bexar County), San Antonio, TX SB 1171 Registering, but not testifying: For: Allison, Jim General Counsel (County Judges & Commissioners Association of Texas) Cole, Phyillis Collin County Commissioner (Collin County Commissioners Court), McKinney, TX Greer, Reagan Bexar County District Clerk (Bexar County), San Antonio, TX Lee, Donald Executive Director (Texas Conference of Urban Counties), Austin, TX Mendez, Mark Ass. County Administrator (Tarrant County Commissioner's Court), Ft. Worth, TX On: Oliver, K. Scott Attorney (Bexar County), San Antonio, TX SB 1225 FOR: Carpenter, Bill Ass. for Governmental Relations (Houston ISD), Houston, TX Grimes, Cyd Travis County Purchasing Agent (TX County Purchasing Agent), Austin, TX McCown, Jack Purchasing Agent (TX County Purchasing Ass.), Houston, TX Van Gheluwe, Denny Ass. Purchasing Agent (TX County Purchasing Agent), Houston, TX AGAINST: Baggett, Donnis Publisher and Editor (TX Daily Newspaper Ass.), Bryan, TX Jackson, Larry Editor (TX Press Association), Wharton, TX Morton, Milton Publisher (Self), Houston, TX Sprinke, G.K. Public Policy Advocate (Daily Court Review), Austin, TX Registering, but not testifying: For: Allison, Jim General Counsel (County Judges & Commissioner's Ass.), Austin, TX Bricker, Laurie Board Member (HISD), Houston, TX Cole, Phyllis Collin County Commissioner (Collin County Commissioners Court), McKinney, TX Douglas, Cathy Lobbyist (TX Ass. of School Boards), Austin, TX Glover, Robert Public Educator (Abilene ISD), Abilene, TX Igo, Shanna none listed (TX Municipal League), Austin, TX Lee, Donald Executive Director (TX Conference of Urban Counties), Austin, TX Rogers, Mark Director of Materials Management (Austin Independent School District), Austin, TX Ross, Joe Fort Worth ISD (Fort Worth ISD), Ft. Worth, TX Woodford, Suzy Executive Director (Common Cause TX), Austin, TX Against: Cates, Nuel Newspaper Publisher (Self), Dallas, TX SB 1287 Registering, but not testifying: For: Carr, Mindy Texas Apartment Association (Texas Apartment Association), Austin, TX Talerico, Jeanne Texas Assoc of Local Housing Finance Agy (TX Assoc of Local Housing Finance Agency), Austin, TX SB 1288 Registering, but not testifying: For: Talerico, Jeanne TX Assoc of Local Housing Finance (TX Assoc of Local Housing Finance Agencies), Austin, TX SB 1542 FOR: Romo, Sylvia Bexar County Tax Assessor (Tax Assessor Collectors Ass.), San Antonio, TX Registering, but not testifying: For: Roe, Kristeen Coke County Tax Assessor-Collector (Tax Assessor-Collectors Association of Texas), Robert Lee, TX SB 1629 FOR: Carpenter, David City Councilman (City of San Antonio), San Antonio, TX Ridge, Brian Lumbermen's Investment Corp. Rep (Lumbermen's Investment Corp.), Austin, TX Registering, but not testifying: For: Windorf, Tom Director of Public Works (City of San Antonio), San Antonio, TX SJR 33 Registering, but not testifying: For: Bailey, Ken Legislative Director (Texas State Association of Fire Fighters), Austin, TX Sandeler, Morris Commissioner (Fire Fighters Pension Commission), Austin, TX


--- title: "Research Paper: Rough Draft" linktitle: "07 Paper Draft" date: "2020-08-28" due_date: "2020-11-30" due_time: "11:59 PM" menu: assignment: parent: Research Paper weight: 10 type: docs editor_options: chunk_output_type: console ---
This is optional! If you would like feedback on your rough draft, submit it to me and I’ll get back to you within a few days.
{{% tweet "1298213534640160769" %}}


Home
Homework for WDV101
Homework for WDV221
Homework for WDV131
Homework for WDV341
Artwork
Artwork Gallery